git - 解决添加和删除的冲突 Git

标签 git git-merge merge-conflict-resolution git-merge-conflict

我有一个分支 release-x.x.x 我想 merge 到 master 中。但是,当我执行 pull 请求时,它有数百个 merge 冲突。我认为这是由于我执行了 Swift 3 迁移。无论哪种方式,当 merge 到 master 时,我都想使用 release-x.x.x 中文件的所有版本。我已经完成了 checkout release-x.x.xgit merge -s recursive -X ours master。我正在反向执行此操作,以便我可以解决 release-x.x.x 上的冲突,然后在 master 上创建 pull 请求并保留所有提交历史记录。

当我运行 git status 时,这是一些输出:

added by us:     Pods/FirebaseCrash/Frameworks/frameworks/FirebaseCrash.framework/FirebaseCrash
added by us:     Pods/FirebaseCrash/Frameworks/frameworks/FirebaseCrash.framework/Headers/FIRCrashLog.h
added by us:     Pods/FirebaseCrash/Frameworks/frameworks/FirebaseCrash.framework/Headers/FirebaseCrash.h
added by us:     Pods/FirebaseCrash/Frameworks/frameworks/FirebaseCrash.framework/Modules/module.modulemap
deleted by them: Pods/FirebaseCrash/README.md
deleted by them: Pods/FirebaseCrash/batch-upload
deleted by them: Pods/FirebaseCrash/upload-sym
deleted by them: Pods/FirebaseCrash/upload-sym-util.bash
deleted by us:   Pods/FirebaseInstanceID/CHANGELOG.md
added by us:     Pods/Intercom/Intercom/Intercom.framework/Versions/A/Intercom
both added:      MyProject/Base.lproj/Localizable.stringsdict
both deleted:    MyProject/Localizable.stringsdict
both added:      MyProject/en-HK.lproj/Localizable.stringsdict

我想我想保留所有由我们添加都添加并且还保留任何标记为由他们删除,所以我有暂存这些文件。如何处理被我们删除均已删除?如果我尝试 git rm Pods/FirebaseInstanceID/CHANGELOG.md,我会收到错误:Pods/FirebaseInstanceID/CHANGELOG.md: needs merge。我是否在正确的轨道上?

最佳答案

是的,您走在正确的轨道上。要以您指定的方式解决 merge 问题,您应该 git rm任何标记为 deleted by us 的文件或 both deleted .

needs merge错误应该只是一个警告。当我运行 git rm <file>在 merge 中被一方删除的文件上,我得到:

<file>: needs merge
rm '<file>'

以及随后的 git status显示文件已被删除(并且删除已暂存)。

关于git - 解决添加和删除的冲突 Git,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40157185/

相关文章:

git - ssh_exchange_identification

git - "Forking"单个主文件到版本控制下的多个变体

git - Visual Studio 2013 不提供在 Git pull 上进行 merge

Git:放弃远程分支上的所有更改并在不强制推送的情况下推送本地更改

xcode - 错误 : Parsing unable to continue due to merge conflicts in Podfile. 锁定

git - 如何从git分支中删除文件

git-merge - 如何使用 github api 检查分支的可合并性

git - "This branch has conflicts that must be resolved"但它已经 merge

visual-studio-2013 - TFS 2013 : Automerge doesn't work

c# - 提交到 Git 对象数据库有什么好处?