如何查看功能分支/命名分支中的更改,查看此分支中所做的所有更改?
我知道我可以逐一审查所有单独的提交,但这会导致在一次提交中审查一些代码,这可能是稍后修改或删除的几个提交。
我还知道如何比较存储库的任何修订(TortoiseHg中的Visual Diff ),并使用它来比较命名分支的最后一次提交与其起点。但是,如果指定的分支在两者之间集成来自缺省的更改,则此操作将失败。
还有别的办法吗?
发布于 2018-07-30 12:04:43
我假设你有这样的东西:
x + y x + y + z
| |
x y | z | t
------|--------|---------|------------> default
\ \ \
\ \ \
+--------+---------+---------> topic
a | b | c |
| | \
x + a + y | x + a + y + b + z + c
|
x + a + y + b + z
要只看到a + b + c
,您应该将最后一次合并的P2
与topic
的tip
进行比较。您应该使用的命令是hg diff -r 'p2(last(merge())):.'
。
下面是与上图对应的测试用例:
#!/bin/bash
cd /tmp
hg init view-abc
cd view-abc
echo x > x
hg commit -Am x
hg branch topic
echo a > a
hg commit -Am a
hg up default
echo y > y
hg commit -Am y
hg up topic
hg merge default
hg commit -m merge
echo b > b
hg commit -Am b
hg up default
echo z > z
hg commit -Am z
hg up topic
hg merge default
hg commit -m merge
hg up default
echo t > t
hg commit -Am t
hg up topic
echo c > c
hg commit -Am c
hg diff -r 'p2(last(merge())):.'
https://stackoverflow.com/questions/51512157
复制