2010-12-03 2 views
3

私は、地理的に分散された、Windows、OSX、およびLinux開発環境が混在する開発者を持つ、かなり大きな組織の一員です。GIT - クロスプラットフォームの汚れ/クリーンフィルタ?

私はクリーン/汚れフィルタを使用するために私をリードして、前の質問求めてきました: Mark a file in the GIT repo as temporarily ignored

をしかし...クロスプラットフォームのフィルタスクリプトを行うための最善の方法は何ですか?私は、開発者が余分なスクリプト環境をインストールする必要はありません。これに関するベストプラクティスはありますか?フィルタをサーバー側で実行する方法は何ですか(githubを使用します)。

答えて

1

デフォルトでインストールされるものによって異なります。

我々のSolaris/Linux/Windows環境では、Perlスクリプトを使用していますが、OSごとに1つしかありません。実行されるOSを認識し、プラットフォームに応じて適切なコードを実行できるスクリプトは1つです。

これは、スクリプトのプラットフォームに依存しない部分で共通機能を分離し、同じスクリプト内のすべてのOs専用サブルーチンのパスと他の特定のコマンドを一度にバージョン管理します。

重要なのは、バージョン管理されたデータ(ブランチの「テスト」または「修正」)とは何の関係もないいくつかの情報(OS)、Osブランチを導入することではなく、または...)特別な支店で共存するだろう。
これは実用的ではありません。これらのスクリプトの特別なバージョンが必要なブランチ修正は何ですか?
"fix-Windows"と "Fix-Unix"ブランチを作成するだけですか、単に "fix"ブランチで上記スクリプトを修正してコミットしてやり直してください。

+0

つまり、いい方法はありませんか? :) –

+0

@Marc:私はこれらのスクリプトの管理方法に関するコメントをいくつか出しています。 – VonC

0

サーバ上でスマッジ/クリーンスクリプトを実行する必要がある場合に問題があります。スマッジ/クリーンは、作業フォルダがある場合にのみ使用してください。あなたはあなたのプラットフォームに応じて異なるバージョンを持つことができます。

これを実行する最善の方法は、プラットフォームごとに1つのバージョンのスクリプトを最大で持つことです。いくつかは再利用することができます - もしあなたがmsysgitを持っているなら。その後、同じバージョンのbashを使用するならば、linuxの場合と同じスクリプトを使用することができます。

+0

プラットフォームごとに異なるバージョンのスクリプトを指定するにはどうすればよいですか?これらのスクリプトはリポジトリ内に存在する必要がありますか? –

関連する問題