2010-01-12 129 views

回答

1

您必須獲取當前的修訂版本號,將其減少1,然後將svn update修改爲該修訂版,直至找到可用的版本。我不認爲Subversion可以在這裏爲你提供很多自動化的幫助,因爲它不知道哪個版本會編譯。

查看如何獲得當前版本號的保持這些問題:

0

爲TortoiseSVN的使用上下文菜單:svn->Update to revision

命令行使用

svn update --revision svn://repo 

如果你真的想看看它,你可以創建一個腳本,在其中給出當前修訂版本的HEAD,然後從那裏開始修訂,直到make(或其他)不會返回錯誤。

+0

我說的是單幹線和Linux下.. – abatishchev 2010-01-12 22:56:58

3

svn info http://[server]:[host]/myrepo將爲您提供版本庫的修訂版本。

然後用svn update -r [revision-1] http://[server]:[host]/myrepo

3

如果您知道某個構建版本的版本號,那麼您可以使用'divide and conquer'來查找問題,而不是從頭開始逐步回退 - 直到找到破壞版本的版本。如果自從上次已知的商品以來有更多修改,這將節省您的時間。

僞代碼:

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: 

粉飾奇數修改了一下那裏...

相關問題