我们在部署的一个分支中遇到错误,查看它我发现一个文件缺少一行代码。我如何找出谁删除了它以及何时删除?
我知道这与 hg blame 有关,但似乎每次我尝试使用它时都会收到“此文件在此提交中不存在”消息,即使这样我也不确定如何制定查询以给出我想要什么。
如果您至少知道字符串的一部分,则可以使用hg grep -all -u "STRING" filename
(-u 将显示用户名,与变更集相关联)
>hg grep --all -u "load_theme_textdomain" functions.php
functions.php:2:-:lazybadger:load_theme_textdomain('fiver', get_template_directory() . '/translation');
functions.php:2:+:lazybadger:load_theme_textdomain('fiver', get_template_directory() . '/languages');
functions.php:1:+:lazybadger:load_theme_textdomain('fiver', get_template_directory() . '/translation');
成绩单:字符串已添加到变更集 1 ("1:+:") 中,并由用户在输出的字段 4 中使用用户名在变更集 2 (":2:-:" + "2:+:") 中进行编辑。删除的行不会:+:
在历史中按时间顺序排列(输出中的第一个)变更集
好的,我承认您使用 mercurial 进行版本控制,而您想要的命令是
hg annotate -u
它是责备的别名,嗯,很简单:hg annotate -u yourFile就是这样......