2012-04-24 3 views
1

他の開発者の1人が、Visual StudioのSilverlightプロジェクトとサーバープロジェクトにビルド前のイベントを追加しました。他の開発者には影響しませんでした。私は何らかの理由で、ビルド前のイベントを削除せずにアプリケーションをビルドして実行することはできません。他の開発者ではなく、あなただけのためにファイルを解凍する方法

ビルド前のイベントを変更すると、バージョンコントロール(svn)の下にある.csprojファイルのみが変更されるようです。とにかく、私はこのファイルを無視するsvnコミットまたはより良い解決策を行うときにですか?

私はsvn delete --keep-localを調べてsvn:ignoreを編集しましたが、他の開発者のためにもそれを元に戻すように見えます。 「無視・オン・コミット」チェンジがあるトータスSVNクライアントで

+6

非常に面白い回避策を考え出すのではなく、ビルド前のイベントがなぜあなたのために*失敗するのかを理解するために、もっと時間を費やすべきでしょう。 –

+0

+1 @ KirkWollのコメント - ビルドプロセスをハッキングするのではなく、間違いなく修正する必要があります。 –

+0

私たちはこれを試してきましたが、開発をあまりにも妨げており、ハックを必要とし、長期的な解決策が見つかるまでポイントを得ました。 – Ben

答えて

0

からトータス、デフォルトではそのチェンジ上のファイルをコミットしないであろう(ここでmore info on changelistsです)。ですから、Tortoise SVNを使用して、コミット時に無視したいファイルをチェンジリストに追加することもできます。

別のオプションは、svn statusを実行する独自のカスタムコミットスクリプトを作成し、 'ignore-on-commit'チェンジリストのファイルを除外して残りをコミットすることです。

svn status --changelist "ignore-on-commit" > ignored.tmp 
for every line in ignored.tmp: 
    file = parse_file_name from line 
    cp file file.bak 
    svn revert file 
svn ci [other options passed to the script] 
for every line in ignored.tmp: 
    file = parse_file_name from line 
    mv file.bak file 
rm ignored.tmp 

残念ながら、標準のコマンドラインSVNクライアントはまだあなたがすべてしかしチェンジであなたのコマンドを実行することを指定するには、非常に便利な機能が欠けている:ここでは擬似コードです。

関連する問題