我有大量宏的文件,我想用C ++代码替换模板。
这样做,我将不得不改变这样的代码
#define stuff_to_do (x) \
do_some_stuff_##x( ); \
do_some_more_stuff( x );
到
template <class T>
void stuff_to_do( T x ) {
do_some_stuff<T>();
do_some_more_stuff();
}
即。在这里和那里更改标签/空格,转义字符和小插入(如<T>
)。
然而,重要的是,注释可以指向在此之前进行更改的程序员。
答案 0 :(得分:3)
没有办法告诉hg annotate
不显示某些提交。从此以后,检查“谁最初写这个”的人将不得不在“之前”看到这种大规模的变化。
可能使未来侦探工作更轻松的一些事情是:
hg commit --user "codeformat bot"
之类的东西让人们知道不要“责备你”答案 1 :(得分:1)
hg annotate为此提供了一些选项:
--skip <REV[+]>
revision to not display (EXPERIMENTAL)
-w, --ignore-all-space
ignore white space when comparing lines
-b, --ignore-space-change
ignore changes in the amount of white space
-B, --ignore-blank-lines
ignore changes whose lines are all blank
-Z, --ignore-space-at-eol
ignore changes in whitespace at EOL
-I, --include <PATTERN[+]>
include names matching the given patterns
-X, --exclude <PATTERN[+]>
exclude names matching the given patterns
在Mercurial 4.3中添加了实验性--skip
选项。