[英]How to undo an svn update?
我修改了工作目錄中的文件並進行了svn更新。 更新執行時沒有沖突。
我希望能夠將工作目錄內容恢復到svn更新之前的狀態。
原因是因為我與共享的svn存儲庫並行維護一個本地git存儲庫。 在執行svn更新之前,我忘了git提交我的本地更改。 現在,我的工作目錄包含與svn更新產生的更改混合的本地更改。 如果我提交,所有更改將顯示為一個原子更改。 我希望他們能分開。 如果我可以恢復更新並保留我在svn更新之前的工作目錄的內容,我可以這樣做。
我一直在回答這個問題,它實際上並沒有包含“如何撤消svn更新?”的簡單答案。 題。
因此,為了其他人的利益,在可解決的情況下,您只想回滾更新:
首先檢查日志:
svn log | less
這將為您提供您希望返回的修訂號(例如957
)。 然后:
svn up -r 957
這是不可能的。 忘記更新前的狀態。
您可以通過使用subversion diff來分隔更改,使用git apply
將其應用於索引,提交(您的更改)並提交所有內容(來自pull的更改)。
這是緊急解決方案。 我建議你切換到git-svn
,將來會為你處理這類事情。
執行“更新到版本”,因此您將本地文件更改為穩定版本,然后重新提交。 這樣你就會失去所有的局部變化。
這是針對linux用戶的。
假設修改如下。
頭 - 20先前的修訂 - 18,17,15,14,10,9,8。
轉到你的src目錄。 使用svn merge -r 17:18 $ url
$ url為你的svn基地。
如果在更新期間發生任何沖突,則會在您的回收站中提供您的文件和修訂文件的副本
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.