我遇到一个问题,我的主更改完全覆盖了我在开发分支中的更改,而不是合并它们。
我有一个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
我的文件被覆盖,未合并。
谢谢你, 西蒙
答案 0 :(得分:1)
检查本地存储库的“ .git ”文件夹中的“ config ”文件或全局。
在这种情况下,如果 notes.mergeStrategy 配置为“他们的”,那么您的更改将被覆盖。你只需删除那个配置,一切都会好的。
价: