我切换到我本地仓库的一个分支,发现它给了我显示x文件更新的消息.这令我感到惊讶,因为我不知道那个分支有什么不同.如何将该分支与默认分支进行比较以查看更改内容?
Nia*_* C. 107
使用hg diff -r BRANCH1:BRANCH2
,其中BRANCH1和BRANCH2是分支的名称.这将显示两个分支的头部之间的差异.
您收到有关"x files updated"的消息,因为原始分支上的文件已更改,不一定是因为另一个分支上的文件已更改.Mercurial向您展示了两个分支中已更改文件集的并集.
要仅列出差异文件,请添加--stat选项:
hg diff --stat -r BRANCH1:BRANCH2
Run Code Online (Sandbox Code Playgroud)
这给出了这样的输出:
mypath/file1.cpp | 1 -
mypath/file2.cpp | 143 ++++++++++
mypath/file3.cpp | 18 +-
3 files changed, 160 insertions(+), 2 deletions(-)
Run Code Online (Sandbox Code Playgroud)
或者稍微清理一下输出,通过sed将其通过管道删除,以删除管道符号后的所有内容:
hg diff --stat -r BRANCH1:BRANCH2 | sed "s/|.*$//g"
Run Code Online (Sandbox Code Playgroud)
这仅给您列出了已更改的文件和最后的摘要行:
mypath/file1.cpp
mypath/file2.cpp
mypath/file3.cpp
3 files changed, 160 insertions(+), 2 deletions(-)
Run Code Online (Sandbox Code Playgroud)