2013-03-11 1 views
2

Je suis nouveau dans git et j'ai un problème de fusion.
Scénario:Git Merging Emettre deux branches

J'ai une branche principale. Je crée une nouvelle branche dev à partir de la commande master start dans la branche dev. Après deux jours, je crée une nouvelle branche devmerge de la branche dev. Maintenant, une équipe commençait à travailler sur devmerge et une était sur le dev. Maintenant dev est aussi de l'histoire de commit et devmerge est aussi de l'histoire de commit mais le problème est quand je veux fusionner les deux devmerge à dev le résultat a manqué l'historique de commit de dev (certaines données de dev sont manquées). Je ne sais pas ce qui se passe.

Répondre

1

Je suggère de l'essayer dans des étapes distinctes.

Master --------------------- 
    \-----Dev----------------- 
       \-DevMerge---- 

Vous avez ci-dessus, effectuez chaque merge séparément:

git checkout dev 
git merge devmerge 

Entraînant:

Master -------------------------- 
    \-----Dev------------------m1-- 
       \-DevMerge----/ 

m1 est la fusion commettras.

git checkout master 
git merge dev 

Entraînant:

Master ----------------------------m2------ 
    \-----Dev------------------m1---/ 
       \-DevMerge----/ 

Je recommande l'installation d'un tool such as gitg en fonction de la plate-forme que vous utilisez, pour obtenir une représentation visuelle des branches.

+0

salut bcmcfc merci pour la réponse rapide, mais le problème est, dev est également a l'histoire de comm après la création de devmerge. signifie que dans les deux branches les développeurs commettent leur travail maintenant les deux branches fonctionnent branches mais maintenant quand je fusionne devmerge en dev certains fichiers dev sont remplacés par des fichiers devmerge, le code est substitué bien que nous avons changé ces fichiers en dev.Pour explication j'ai un fichier gameconfig .cpp, j'ai changé quelques lignes dans la branche dev quand je fusionne devmerge en dev ce fichier est remplacé par le vieux code devmerge. –