Git merge删除应该保留的代码

Git merge删除应该保留的代码,git,git-merge,Git,Git Merge,合并分支时,Git会自动删除不应该删除的代码。基本上我们有两个主要分支:掌握和发展 MASTER有我们的生产代码 开发有我们当前的开发场景 所有新代码都从其他分支开始,这些分支通常涉及问题或新特性。当我们试图将此功能或修补程序分支合并到develop中时,问题就出现了 我们的日常活动是:(当前分行发展): 两个程序员都添加了一些代码并提交(我们每天提交不止一次)。在一天结束时,我们尝试合并我们的东西。首先,程序员A进行推送 git add . git commit -m 'last

合并分支时,Git会自动删除不应该删除的代码。基本上我们有两个主要分支:掌握和发展

  • MASTER有我们的生产代码
  • 开发有我们当前的开发场景
所有新代码都从其他分支开始,这些分支通常涉及问题或新特性。当我们试图将此功能或修补程序分支合并到develop中时,问题就出现了

我们的日常活动是:(当前分行发展):

两个程序员都添加了一些代码并提交(我们每天提交不止一次)。在一天结束时,我们尝试合并我们的东西。首先,程序员A进行推送

  git add .
  git commit -m 'last commit before push'
  git checkout develop
  git merge some-feature
  git push develop
到目前为止没有问题。然后程序员B也尝试这样做,但他必须先做一个拉动

  git add .
  git commit -m 'last commit before push'
  git checkout develop
  git merge some-feature-b
  git pull origin develop
Git成功获取并合并了origin/develop。可能会发生一些冲突,冲突没有问题。我们的问题是Git删除了不应该删除的代码,我们没有机会告诉它不要删除


我们做错了什么?

我会先拉,然后合并

git checkout some-feature
# work
git add .
git commit -m 'last commit before push'

git checkout develop
git pull develop
git merge some-feature

这样,您就可以将本地的
某些功能
分支合并到最新的
开发
分支中。

其他分支中的代码是否已删除?Git不会无缘无故地删除一些代码(您的命令看起来很好),如果不知道分支中发生了什么,很难判断。Git不会只是在合并中随机删除代码,如果它在合并的分支之一中没有被删除。请参阅,默认情况下,强制选项处于激活状态。请参阅
git checkout some-feature
# work
git add .
git commit -m 'last commit before push'

git checkout develop
git pull develop
git merge some-feature