1

나는 주인과 합병하고자하는 지점이 release-x.x.x입니다. 그러나 내가 끌어 오기 요청을 할 때 수백 개의 병합 충돌이 있습니다. 이것이 내가 수행 한 Swift 3 마이그레이션 때문인 것 같습니다. 어느 쪽이든 master에 병합 할 때 release-x.x.x에있는 모든 파일 버전을 사용하고 싶습니다. 나는 checkout release-x.x.xgit merge -s recursive -X ours master을했습니다. 나는 반대로 그것을 수행하고 있으므로 release-x.x.x에서 충돌을 해결하고 master에 풀 요청을 만들고 모든 커밋 기록을 유지하십시오. 내가 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 

내가 added by us, both added에 아무것도 유지하고 또한 아무것도 deleted by them을 표시 유지하려는 가정, 그래서 이러한 파일을 개최했다. deleted by usboth deleted을 어떻게 처리합니까? git rm Pods/FirebaseInstanceID/CHANGELOG.md을 시도하면 오류가 발생합니다 : Pods/FirebaseInstanceID/CHANGELOG.md: needs merge. 여기 내가 옳은 길을 가고 있는가?

답변

2

예, 올바른 방향입니다. 지정된 방식으로 병합을 해결하려면 deleted by us 또는 both deleted으로 표시된 파일 git rm이 있어야합니다.

needs merge 오류는 경고 일뿐입니다. 내가 병합 한쪽에 의해 삭제 된 파일에 git rm <file>을 실행하면, 내가 얻을 :

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

그리고 후속 git status 파일이 삭제 된 것을 보여준다 (및 삭제가 개최되었습니다).