我有一些我正在浏览的代码,在过去的50次提交中,我写的一个函数似乎已经神秘地消失了。我可以做一个二手搜索类型的算法,由我慢慢的人手完成,但是如果有一种方法可以在特定的版本中做一个“未来责备”,看看未来线路何时发生变化,那就太好了。 / p>
在SVN或Tortoise SVN中使用较旧的版本,是否有一种很好的方法可以在未来的版本中找到更改/删除行?
答案 0 :(得分:1)
我想你可以这样做:
for rev {$first_rev..$last_rev}
do
if svn cat -r$rev $file_name | grep -q $function_name
then
echo "Function is in revision $rev"
fi
done
您可以变得更加漂亮并使用svn log $file_name
来获取$file_name
更改的实际修订版。它应该很快。
您还可以使用svn annotate
(又名svn blame
和svn praise
)来显示文件中的每一行,更改时的行以及由谁。但是,如果该功能已从文件中删除,则无法从svn annotate
获取该功能。