在ClearCase中,您可以「劫持」一個文件,這意味着更改管理系統可以讓您對其進行更改,但它不會嘗試提交這些更改,或者嘗試在最新更改時更新該文件。這對配置文件或只是生產需要的黑客類(例如加密消息的緩慢過濾器等)很有用。如何在Subversion中執行「劫持」,就像在ClearCase中一樣?
有沒有辦法在Subversion中做到這一點?
在ClearCase中,您可以「劫持」一個文件,這意味着更改管理系統可以讓您對其進行更改,但它不會嘗試提交這些更改,或者嘗試在最新更改時更新該文件。這對配置文件或只是生產需要的黑客類(例如加密消息的緩慢過濾器等)很有用。如何在Subversion中執行「劫持」,就像在ClearCase中一樣?
有沒有辦法在Subversion中做到這一點?
在Subversion中沒有真正的等價物,因爲這些文件可以在Subversion的工作目錄中直接寫入。
您可以忽略file in subversion on commit(使用TortoiseSVN),它允許您忽略在本地完成的當前修改,同時將該文件保持在版本控制之下。
這與ClearCase中的「劫持」文件非常相似。
的OP ArtB問一個命令行的解決方案,我建議using changelist(如svn changelist
),這是他在his answer總結(upvoted)
,你會看到採取了這種做法:
這是一個新的答案,可以更好地總結VonC幫助我帶來的結果。答案是取文件add it changelist,名稱爲「ignore-on-commit」(見:,不包括來自提交清單的項目)。所以svn命令本身就是svn changelist ignore-on-commit $target_file
。
好點。 +1。我更新了我的答案以獲得更多可見性,並添加了幾個對其他類似答案的參考。 – VonC 2012-02-16 19:24:00
此功能的使用情況看起來很糟糕 – Simon 2012-02-16 18:46:56
@Simon如果你在我的回答中轉到第二個鏈接,他們承認有時間。在開發過程中關閉驗證或覆蓋設置以更快部署是常見情況。 – ArtB 2012-02-16 19:00:11
我沒有在鏈接中看到任何可以證明您的版本控制系統崩潰的證據。時間戳例子不是非常有說服力的例子。有沒有IDE可以搞砸你的文件?這看起來像一個非常糟糕的功能給我。 – Simon 2012-02-16 19:23:56