亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

收回意外簽到

收回意外簽到

精慕HU 2019-11-14 10:51:38
您正在使用Subversion,并且在準備就緒之前不小心簽入了一些代碼。例如,我經常:a)簽入一些代碼,然后b)進行一些編輯,然后c)點擊,輸入以重復上一個不幸的是簽入的命令。是否可以通過Subversion從服務器撤回這種意外簽入?
查看完整描述

3 回答

?
千萬里不及你

TA貢獻1784條經驗 獲得超9個贊

注意:這可能無法用于當前的Subversion版本,這是一個錯誤的想法-但我將其保留在此處以供參考

注意: 通常,如果您錯誤地簽入,則應該恢復提交-請參閱此問題的其他答案。但是,如果您想知道如何真正撤消提交的影響并將存儲庫更改為以前的狀態,則下面有一些解釋:

這通常不是您想要的,但是,如果您確實要從存儲庫中刪除實際的提交版本,則可以按照以下步驟在存儲庫上進行討厭的回滾(假定已將$REV其設置為最新版本)刪除):

  • 請先備份您的存儲庫,因為這些更改可能會破壞存儲庫(并閱讀以下假設)

  • 將您的本地副本還原到以前的版本,以免混淆(svn revert -r $((REV-1))

  • 在存儲庫中,刪除db/revs/$REVdb/revprops/$REV

  • 在存儲庫中,刪除db/current和(對于Subversion 1.6或更高版本)db/rep-cache.db,然后運行svnadmin recover .

  • (可能)調整權限db/rep-cache.db以防止嘗試寫入只讀數據庫錯誤

所有這些都假定:

  • 您正在使用fsfs基于倉庫

  • Subversion版本大于1.5.0(否則,您必須手動編輯db/current和更改版本號,而不是運行svnadmin recover .

  • 尚未提交其他后續修訂

  • 您具有對存儲庫文件系統的寫訪問權

  • 執行上述操作時,您不怕其他人嘗試訪問它

當一個巨大的文件被提交到一個我不想永遠保留在歷史記錄(和鏡像等)中的存儲庫時,我就完成了。這絕不是理想或正常的做法...


查看完整回答
反對 回復 2019-11-14
?
開心每一天1111

TA貢獻1836條經驗 獲得超13個贊

如果您的意思是,我該如何清除意外簽入的歷史記錄:這很困難。


svn不允許您撤消任何操作,因為它會將修訂版本保存為變更集。但是,有些工具可讓您在存儲庫轉儲中執行幾乎所有操作。您可以:


轉儲您的倉庫。


使用過濾流從SVN管理工具來擺脫簽入的。


把它放回倉庫。


但這可能會完全破壞您的存儲庫,因此,除非您完全了解自己的工作并備份所有內容,否則永遠不要嘗試這樣做。


查看完整回答
反對 回復 2019-11-14
  • 3 回答
  • 0 關注
  • 484 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號