我有一个相当简单的Mercurial仓库,除了default
分支外,还有一个命名分支。
已经对default
分支进行了更改并提交,我想将这些更改合并到我的命名分支中。然而,hg merge default
似乎没有合并所有更改。
例如:
hg update working
99 files updated, 0 files merged, 0 files removed, 0 files unresolved
hg status -m --rev default:working
有大约20个带有修改的文件
M ... some list of files...
hg merge default
merging path/to/a/file/foo.java
3 files updated, 1 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
hg status -m --rev default:working
现在还有一些文件被修改了,我本以为它们会被合并。我可以运行“hg diff -r default”命令,发现有一些修改没有被合并。下面是仓库的样子:
@ changeset: 4:d41da580b434
| branch: working
| tag: tip
| parent: 1:3ed1c8bf91cf
| user: bob costas
| date: Tue Mar 24 10:13:25 2015 -0500
| summary: pr-1243 and minor updates
|
| o changeset: 2:ea0c249218fa
| | parent: 0:385565af3c13
| | user: bob costas
| | date: Mon Mar 23 15:09:42 2015 -0500
| | summary: bunch of updated files and fixes
| |
o | changeset: 1:3ed1c8bf91cf
|/ branch: working
| user: bob costas
| date: Mon Mar 23 13:38:59 2015 -0500
| summary: pr-1231
|
o changeset: 0:385565af3c13
user: bob costas
date: Thu Mar 19 18:15:52 2015 -0500
summary: initial commit
hg status -m --rev default
(删除末尾的:working
)吗?另外,您看到的hg diff
差异是否实际上是在working
分支中进行的更改,而这些更改尚未合并到default
中?我不确定您如何使用这些分支,但也许您需要先将working
合并到default
中,然后再反过来合并。 - David Levesque:working
只是为了明确要比较哪些修订版本。在working
中有一些更改不在default
中。然而,我想将default
合并到working
中,整理一下,然后再将working
合并到default
中。我百分之百确定default
中有更改(因为我放了它们在那里),这就是我需要合并的原因。 - Oyunokatadefault
分支头部进行比较,你应该会看到变化。具体来说,你会看到变更集1和4(等等,第3个变更集发生了什么?)。这是正常的,也是你想要的。 - Kevin