我想撤銷一個svn
修訂版,它不是日誌中的最新版本。修訂版本中有許多文件更改,其中一個已被更新的更改覆蓋,而其他所有更改都是最新的。如何撤銷不是最新的svn修訂版?
所以這是一箇中等難度的場景。不僅是我想要取出的修訂不在日誌的頂部,而且還包含自其他用戶更新以來的文件更改。
您能否建議如何以優雅的方式執行這種回覆,意味着涉及的最簡單的一系列步驟?
我想撤銷一個svn
修訂版,它不是日誌中的最新版本。修訂版本中有許多文件更改,其中一個已被更新的更改覆蓋,而其他所有更改都是最新的。如何撤銷不是最新的svn修訂版?
所以這是一箇中等難度的場景。不僅是我想要取出的修訂不在日誌的頂部,而且還包含自其他用戶更新以來的文件更改。
您能否建議如何以優雅的方式執行這種回覆,意味着涉及的最簡單的一系列步驟?
您將需要創建並應用反向補丁。例如,以下一系列命令會恢復修訂版925中引入的更改。衝突可能會照常發生,您將不得不通過編輯補丁文件來解決衝突。
svn diff -r 925:924 > rev.patch # diff bad revision with previous one
svn patch --dry-run rev.patch # check for conflicts
svn patch rev.patch # actual patching
svn commit
什麼? DIFF?補丁?有一個用於撤消更改的命令:http://svnbook.red-bean.com/en/1.8/svn.branchmerge.basicmerging.html#svn.branchmerge.basicmerging.undo – bahrep
你可以只運行svn merge ^/MyProject/trunk . -c-123
恢復修訂。不要忘記提交此更改並提供日誌消息。
閱讀文檔:http://svnbook.red-bean.com/en/1.8/svn.branchmerge.basicmerging.html#svn.branchmerge.basicmerging.undo – bahrep