2012-07-06 85 views
1

我试图找出为什么有人已删除文件的BZR仓库内。我知道它在那里,但现在它消失了。从那以后,已经有数百次提交。没有人想通读每一个。我只是想在文件被删除时找到修订号,以找出它被删除的原因。查找BZR修订版本,其中文件被删除

是否有BZR一个命令,可以做到这一点?我尝试使用bzr日志文件名,但它给了我一个错误:

bzr: ERROR: Path unknown at end or start of revision range: 

有什么建议吗?

回答

4

,你可以放弃的bzr log -v结果到一个文件,然后搜索,对于有问题的路径中第一次出现。

或者,使用日志的--xml选项,并使用XPath查询包含有问题的路径,这是已删除项目元素的一个子元素。

+1

和修订,其中文件不存在,那么你可以用'bzr log -rN..M -v'缩小搜索范围,然后搜索特定的文件名。 – bialix 2012-07-07 11:51:21

0

转储日志或一个范围使用bzr log -rN..M -v被别人所建议的日志。

为了使结果更容易一点,只有版本号和删除的文件此过滤器sed可能是有用的信息:如果你大概知道修改文件时仍然存在

bzr log -v -r1..-1 | sed -ne '/^revno/ p' -e '/^removed/,/^[^ ]/{/^/p}' 
+0

收到此错误:sed的:1: “/ ^删除/,/^[^]/{/ ^/... ...”:在p命令结束多余的字符,当我通过庆典终端 – Allen 2012-08-15 03:29:44

+0

运行啊,你一定要在BSD上。试试这个:'bzr log -v -r1 ..- 1 | sed -ne'/^revno/p'-e'/^removed /,/^[^]/p''。这种方式的输出不那么干净,但应该可以工作。 – janos 2012-08-15 06:17:25