日期“,虽然有差异
我有一个2分支的git仓库:master和test。
主站和测试分支之间存在差异。
两个分支都承诺所有更改。
如果我做:
git checkout master
git diff test
出现一个充满变化的屏幕,显示不同之处。 我想合并测试分支中的更改,所以:
git merge test
但收到消息“已更新”
但是,检查每个不同分支下的文件清楚地显示了差异。
这里有什么问题,我该如何解决?
“已经最新”消息表示来自您尝试合并的分支的所有更改已经合并到您当前所在的分支中。 更具体地说,这意味着你试图合并的分支是你当前分支的父分支。 恭喜,这是你做过的最简单的合并。 :)
使用gitk
来查看您的存储库。 “测试”分支的标签应位于“主”分支标签下方的某处。
您的分支机构对其父母而言是最新的。 根据合并,自上次合并后,父项没有任何新的更改。 这并不意味着分支是相同的,因为你的工作分支可以有很多变化,听起来就像你一样。
这经常发生在我知道远程主服务器发生更改时,所以我尝试使用git merge master
来合并它们。 但是,这不会与远程主服务器合并,而是与您的本地主服务器合并。
所以在做合并之前,签出master,然后git pull
那里。 然后,您将能够将新的更改合并到您的分支中。
假设你有一个具有以下提交历史记录的分支master
:
A -- B -- C -- D
现在,你创建一个分支测试,处理它,并做4个提交:
E -- F -- G -- H
/
A -- B -- C -- D
master
的头指向D, test
的头指向H.
当您正在合并的分支的HEAD是您要合并的分支的提交链的父级时,显示“已经最新”消息。 情况就是如此: D
是E
的父母。
没有什么可以从合并test
,以master
,因为一切都没有改变对master
从那时起。 你想要在这里做的是从字面上告诉Git有master
的头指向H,所以主人的分支有以下提交历史记录:
A -- B -- C -- D -- E -- F -- G -- H
这是Git命令reset
。 您还希望工作目录反映此更改,因此您将执行硬重置:
git reset --hard H
链接地址: http://www.djcxy.com/p/94799.html