Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git:在成功将主机与3.0版合并后,主机仍然没有';我没有得到所有的更新_Git - Fatal编程技术网

Git:在成功将主机与3.0版合并后,主机仍然没有';我没有得到所有的更新

Git:在成功将主机与3.0版合并后,主机仍然没有';我没有得到所有的更新,git,Git,我有master和一个名为version-3.0的分支,在version-3.0上进行更改并将其与master合并后,我撤消合并并进行其他更改,然后再次合并 在第二次合并成功完成后,我发现主版本仍然不同,并且没有从version-3.0分支获得更新 再次尝试合并,并显示“已更新” 我撤消合并并进行其他更改,然后再次合并 如果您通过还原更改撤消了合并,则返回更改的唯一方法是还原该还原 这是因为还原版本是一个新版本,与原始更改没有任何正式关系,它在历史上比之前的合并更新,因此具有优先权 我建议您花一

我有
master
和一个名为
version-3.0
的分支,在
version-3.0
上进行更改并将其与
master
合并后,我撤消合并并进行其他更改,然后再次合并

在第二次合并成功完成后,我发现
主版本仍然不同,并且没有从
version-3.0
分支获得更新

再次尝试合并,并显示“已更新”

我撤消合并并进行其他更改,然后再次合并

如果您通过还原更改撤消了合并,则返回更改的唯一方法是还原该还原

这是因为还原版本是一个新版本,与原始更改没有任何正式关系,它在历史上比之前的合并更新,因此具有优先权

我建议您花一些时间了解三方合并算法是如何工作的,以及最近的共同祖先是如何被选择的。一旦你这样做了,这是很明显的,但不容易在一篇短文中描述。您可以通过询问
git merge base master version-3.0
(或任何其他两个修订版)让git向您显示合并库,并且您可以使用
gitk master..version-3.0
(从version-3.0合并到master时“他们的”侧)和
gitk version-3.0..master查看任意一侧的更改列表(‘我们的’一方)-或者再加上其他两个版本



当然,您可以在不需要的合并之前重新设置版本的基础,然后在此基础上再次合并,但这是一种更高级的方法,并不真正适用于有许多其他分支基于它的
master

还原是一种提交,将更改作为新的提交撤消。如果您只是想像从未发生过一样撤消它,请使用reset。