[英]Commit solution as is to SVN
我們使用VisualStudio與SVN和VisualSVN。
我通過移動(剪切和粘貼/拖放)重命名解決方案並重命名了大量文件。
從未聽過VisualSVN的投訴,現在是時候提交它拒絕這樣做了:
Commit failed (details follow):
Error: Cannot commit 'C:\Sources\xxx' 'xx\Model\Model.cs' because it was moved to
'xxx\NewModel.cs' which is not part of the commit; both sides of the move must be committed together
這是正確的,在給定的位置上文件都不存在,坦白說我不在乎。
我需要SVN來存儲解決方案,就像現在一樣。 我可以無法跟蹤已移動和/或復制文件的更改歷史記錄。
有沒有辦法強制提交?
您似乎得到了錯誤,因為您只提交了移動操作的一部分。 Subversion中的移動包括svn copy
(到新項目位置),然后是svn delete
(原始項目),因此移動的兩側必須一起提交到一個修訂版本中。
我建議遵循以下步驟:
Visual Studio | VisualSVN | 承諾...... 確保您執行的移動的兩側都列在“已更改”列表視圖中並嘗試提交。 你還得到同樣的錯誤嗎?
如果第一步失敗,請轉到Visual Studio | VisualSVN | Windows | 等待變更 。 右鍵單擊解決方案/工作副本的根節點,然后選擇Commit ...。 仍然得到錯誤?
轉到Visual Studio | VisualSVN | 設置Working Copy Root ...並確保工作副本根指向解決方案WC的根目錄。 嘗試在此步驟后提交。
我在過去一周遇到了這個問題,同時重構了一些代碼並重命名了大量文件。 我能夠糾正問題如下:
TL; DR - 如果SVN認為某個文件是您項目的一部分,但是您的硬盤文件丟失了,則會出現此錯誤。 只需還原文件即可將其恢復到驅動器上。 要清理它,請將文件添加回項目中,然后在VS中將其刪除以使所有內容保持同步。
請先點擊刷新按鈕,在提交包中刷新后,Visual Studio將包含刪除和重命名SVN所需的規則
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.