Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
解决Git中添加和删除的冲突_Git_Git Merge_Merge Conflict Resolution_Git Merge Conflict - Fatal编程技术网

解决Git中添加和删除的冲突

解决Git中添加和删除的冲突,git,git-merge,merge-conflict-resolution,git-merge-conflict,Git,Git Merge,Merge Conflict Resolution,Git Merge Conflict,我有一个分支release-x.x.x,我想合并到主分支中。但是,当我执行拉请求时,它有数百个合并冲突。我认为这是由于我执行了快速的3迁移。无论哪种方式,当合并到master中时,我都希望使用release-x.x.x中文件的所有版本。我已经完成了签出release-x.x.x和git merge-s recursive-x我们的master。我的做法是相反的,这样我就可以解决release-x.x.x上的冲突,然后在master上创建一个pull请求,并保留所有提交历史记录 当我运行git s

我有一个分支
release-x.x.x
,我想合并到主分支中。但是,当我执行拉请求时,它有数百个合并冲突。我认为这是由于我执行了快速的3迁移。无论哪种方式,当合并到
master
中时,我都希望使用
release-x.x.x
中文件的所有版本。我已经完成了
签出release-x.x.x
git merge-s recursive-x我们的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:需要合并
。我在这里走对了吗?

是的,你走对了。要以指定的方式解决合并问题,您应该
git rm
任何标记为
已被我们删除的文件
均已删除

需要合并
错误应该只是一个警告。当我在合并中对一方删除的文件运行
git rm
时,我得到:

<file>: needs merge
rm '<file>'
:需要合并
rm“
随后的
git状态
显示该文件已被删除(并且删除已被暂存)