2010-01-12 555 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: 

粉饰奇数修改了一下那里...

相关问题