Git merge master进入开发分支是覆盖,而不是合并

时间:2015-11-19 09:37:02

标签: git github version-control

我遇到一个问题,我的主更改完全覆盖了我在开发分支中的更改,而不是合并它们。

我有一个Web应用程序的主服务器和开发分支。我目前正在开发需要几周时间才能实现的功能,但与此同时,其他开发人员也在不断添加到master。

让我以一个文件为例functions.php

我在functions.php分支的dev文件中进行了多行更改。

我偶尔会使用git checkout master切换到主人,然后使用git pull origin master从在线提取。这使团队的变化与我当地的开发人员一致。

现在,我想将这些更改引入functions.php分支中的dev文件中,同时保留我迄今为止所完成的工作。所以我签出dev分支,然后运行git merge master。问题是,master分支中的函数文件完全覆盖dev分支中的函数文件。

为什么?

总结我的工作流程:

git checkout master # Move to master branch
git pull origin master # Get down local changes, all along I have been working in dev and making dev progress
git checkout dev # move to dev branch
git merge master # attempt to align team changes to my dev branch

我的文件被覆盖,未合并。

谢谢你, 西蒙

1 个答案:

答案 0 :(得分:1)

检查本地存储库的“ .git ”文件夹中的“ config ”文件或全局。
在这种情况下,如果 notes.mergeStrategy 配置为“他们的”,那么您的更改将被覆盖。你只需删除那个配置,一切都会好的。

价:

  1. https://git-scm.com/docs/git-config
  2. https://git-scm.com/docs/git-notes