我有一个本地分支,名为source_report_overview_Approach3,github上有它的远程对应分支origin/source_report_overview_Approach3。
在一个点上,两个指针指向同一个提交,如下图所示。
现在我使用消息“test commit”对本地分支进行另一次提交(
git commit
)。这将使我的本地分支向前移动一次提交,同时保持远程分支不变,如下所示:现在我将此提交推送到远程(
git push origin source_report_details_Approach3
)。据我所知,git应该将remotes/origin/source_report_details_Approach3
移动到后面的提交,即test commit
,然后我的本地和远程分支应该同步,并且应该指向相同的test commit
。但是它以某种方式做了如下所示的事情:现在如果我执行
git status
,它会给我以下消息:我认为这不应该发生。
remotes/origin/source_report_details_Approach3
不应该自动更新以指向source_report_details_Approach3
吗?我该如何解决这个问题。根据我对git的了解,这很奇怪。
如果我尝试使用
git pull origin source_report_details_Approach3
拉取分支,则会出现合并冲突。这是因为test commit和test commit 2
都在同一文件的同一位置进行更改。Git尝试将远程的test commit
合并到我的本地分支中。由于我的本地文件有test commit 2
,所以会出现冲突。此外,我是唯一在该分支上工作的人。尽管如此,由于问题的原因,我几乎每次推送任何内容都要解决合并冲突。
git diff origin/source_report_details_Approach3
。 - Chris Maes