2012-04-24 37 views
1

其中一位開發人員將預構建事件添加到Visual Studio中的Silverlight和服務器項目中。它不影響任何其他開發人員,只是我。出於某種原因,我不能構建和運行我們的應用程序,而無需刪除預構建事件。如何僅爲您而不是其他開發人員提供文件

它看起來像修改預生成事件只會改變版本控制(svn)下的.csproj文件。無論如何,我在執行svn commit或更好的解決方案時忽略此文件?

我已經看着svn刪除--keep-local和編輯svn:忽略,但它似乎基本上取消了其他開發者的支持。

+6

您應該花更多時間來弄清楚爲什麼預構建事件只會爲您*失敗,而不是試圖想出一個非常冒險的解決方法。 – 2012-04-24 19:27:44

+0

+1對@ KirkWoll的評論 - 你絕對應該修復它,而不是黑客你的構建過程。 – 2012-04-24 19:30:29

+0

我們一直在嘗試,並且已經到了阻礙開發太多的地步,我們需要進行破解,直到找到長遠的解決方案。 – Ben 2012-04-25 13:10:42

回答

0

烏龜SVN客戶端有一個「忽略上提交」更改列表 - 默認對修改列表不會犯文件(這裏的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客戶端仍然缺乏一個非常有用的功能,以指定要在一切變更表運行命令。

相關問題