[英]How to get from SVN the previous revision before the HEAD?
我已將最新版本檢出到我的工作副本,但它已損壞 - 無法編譯。
如何獲得頭部之前的修訂? 如果它也被打破了 - 之前的前一個?
svn info http://[server]:[host]/myrepo
將為您提供存儲庫的修訂版。
然后使用svn update -r [revision-1] http://[server]:[host]/myrepo
更新本地副本svn update -r [revision-1] http://[server]:[host]/myrepo
如果你知道一個好構建的修訂版號,那么你可以使用“ 分而治之 ”來找到問題,而不是退一步 - 從頭部開始直到找到破壞構建的修訂版。 如果您從上次知道的商品中獲得了多次修改,這將節省您的時間。
偽代碼:
known_good=whatever
known_bad=head_revision
start:
candidate=(known_good + known_bad) / 2
build candidate
if success
known_good=candidate
else
known_bad=candidate
if (known_good + 1) == known_bad
goto end
go to start:
end:
對奇數修訂版進行着色有點......
您必須獲取當前修訂版號,將其減少一個並svn update
到該修訂版,直到找到有效的版本。 我不認為Subversion可以在這里為您提供很多自動化幫助,因為它無法知道將編譯哪個版本。
有關如何獲取當前版本號的信息,請參閱以下問題:
對於TortoiseSVN使用上下文菜單: svn->Update to revision
用於命令行
svn update --revision svn://repo
如果你真的想要它,你可以制作一個腳本,你給它當前的HEAD修訂版號,並從那里下去修改,直到make
(或其他)不返回錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.