如何查找修改了函数引用的所有changsets?

Syl*_*ain 4 mercurial

我需要找到与Save()方法相关的代码的所有最近更改.我需要一个mercurial命令来查找每个变更集/文件,其中一行引用字符串"Save();" 被添加或修改.

我需要更多只是变更集,我需要查看所做更改的文件.

jke*_*ian 5

看起来你正在寻找类似的东西

hg grep --all 'Save();'
Run Code Online (Sandbox Code Playgroud)

这应该会给你格式化的每个文件更改

<file path>:<revision>:+ or -:<line of code changed>
Run Code Online (Sandbox Code Playgroud)

此外, - all标志是有用的,以确保你得到所有的引用,因为默认情况下汞停止寻找一个文件时,它找到的第一个引用(通过修改列表向后搜索)之后.另请注意,您几乎肯定会想要限制您搜索的修订范围,因为这需要相当长的时间来处理大型回购.

如果你在unix系统上,你应该能够将grep命令的输出传递到一个文件中(运行需要一段时间,你可能想要缓存它,以防你没有得到第一个以后的东西)时间)

cat saved_grep_results | awk 'BEGIN {FS=":"} {print $1" "$2}' | uniq
Run Code Online (Sandbox Code Playgroud)

这应该为您提供要查看的文件和修订列表.