2017-02-03 2 views
16

Je suis nouveau à GIT, jusqu'à présent, j'avais utilisé Visual Studio Online TFS pour mon contrôle de version et je suis le développeur. Quand j'ai créé mon dernier projet, j'étais un peu induit en erreur en pensant que GIT était la meilleure option pour cela.Visual Studio 2015 Comment fusionner une branche en master?

J'ai donc enregistré mon master. Puis, quand j'allais travailler sur une fonctionnalité que je lu que je devais créer une branche (ce n'était pas nécessaire TFS) donc je créé « development_print » comme une nouvelle branche et a travaillé sur ma fonction.

Maintenant, ma fonctionnalité est complète mais je ne sais pas comment la fusionner en master. Je ne suis pas intéressé par plusieurs branches en ce moment, je veux juste que ma nouvelle fonctionnalité fusionne en master et reste avec master.

Dans VS il y a une option branche de fusion mais il ne me permet de se fondre dans development_print (Je veux que ma fonction en maître!) Donc il ne me laisse pas mis dans la branche actuelle et fusion à partir de spectacles de la Direction:

  • development_print
  • maître
  • origine
  • /development_print
  • origine
  • /maître

qui est un peu confus? il semble tout en arrière. Alors, comment puis-je sortir de ce gâchis sans perdre tout le travail que j'ai fait sur la fonctionnalité?

+0

Payer en master, et fusionner votre fonction en master –

+0

De plus, vous n'avez pas besoin d'utiliser des branches avec git, cela rend les choses plus agréables à plusieurs reprises, surtout avec plusieurs développeurs. –

+0

Je l'ai fait sur Git Command Line en dehors de VS: git checkout master suivi par git fusionner development_print et ma fonctionnalité est po Comment puis-je m'assurer que je travaille maintenant sur la branche master? Si possible, je voudrais me débarrasser de la branche development_print maintenant que j'ai fusionné. Je suppose que la fusion s'est également engagée. –

Répondre

26

La manière de fusionner la branche development_print dans la branche master est la suivante:

VS -> Team Explorer -> Branches -> branche principale double clic -> Merge -> sélectionnez development_print pour la fusion de la branche -> Fusionner.

La boîte de sélection indique:

development_print 
master 
origin/development_print 
origin/master 

Cela signifie que vous avez des succursales development_print et master local et à distance. origin/ signifie que les branches existent à distance.

Si vous ne voulez pas la branche development_print après la fusion, vous pouvez le supprimer pour les locaux et distants:

Team Explorer -> Branches -> sélectionnez development_print -> clic droit -> Supprimer -> sélectionnez development_print sous Distants/origine -> Supprimer la branche à distance.

2

Vous pouvez suivre le tutoriel Microsoft "Create work in branches".
En outre, comme indiqué dans la section « Getting Used to Git in Visual Studio: Branches » de Bytes Jeremy (2014, mais devrait demander encore), vous pouvez revenir à la « Branches » et sélectionnez « Fusion ».

Cela nous donne menus déroulants à remplir:

https://4.bp.blogspot.com/-m3zHy1wthZA/VKIadAAXBqI/AAAAAAAADqY/0LczBDT-kOE/s1600/Merge.png

Vous pouvez voir la section de branche dans "Microsoft Application Lifecycle Management", également utilisé lorsque vous avez créé votre branche sujet:

https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/45/92/2014/06/pull_2D00_requests/6242.VCtrlGitPullReqCreateTopicBranch.png

+0

Pour l'autre tâche, j'ai simplement travaillé sur les fichiers de la branche master sans utiliser la branche development_print mais lorsque j'essaie de m'enregistrer, il n'y a pas d'option pour associer un ID de tâche à l'ensemble Change comme toujours dans TFS. Il semble que la seule façon de pouvoir associer un ID de tâche à un ensemble de modifications consiste à effectuer le travail sur une branche puis à fusionner. –