Je ne comprends pas pourquoi "les deux supprimés" est un statut pour les chemins non fusionnés.
Si:
Pourquoi y a-t-il un conflit avec certains fichiers marqués comme "tous les deux supprimés"?
Je comprends le conflit pour "les deux ajoutés", lorsqu'un fichier est ajouté dans NewStandard et qu'une autre version du fichier est ajoutée dans OldCustom.
Mais, pour la suppression, quel est le problème si le fichier a été supprimé dans NewStandard, et a également été supprimé dans OldCustom? C'est un état équivalent, non?
Comme indiqué dans cette réponse (suggéré en double):
vous pouvez voir un "les deux supprimés" lorsque branchA
a un git mv oldfile newstandard
commit et branchB
a un git mv oldfile newcustom
commit.
Dans ce cas, lorsque vous essayez de fusionner customBranch
dans standardBranch
, git
signalera un conflit sur trois fichiers:
both deleted: oldfile
added by them: newcustom
added by us: newstandard
Comme tout conflit, le choix final est entre vos mains:
git
souligne simplement le fait que peut-être il pourrait y avoir un problème dans le fait que newcustom
et newstandard
vivre ensemble dans votre version finale du code, et peut-être cela pourrait être lié au fait que les deux ont été créés en étant une copie de oldfile
.
Vous pouvez corriger cela manuellement:
oldfile
est le résultat attendu: git reset oldfile && git rm oldfile
,newstandard
est le résultat attendu, supprimez l'autre: git reset newcustom && git rm newcustom
,newstandard
et newcustom
doivent être fusionnées: modifiez-les à la main ou utilisez un outil de fusion à 3 voies: meld newstandard newstandard newcustom