2017-10-20 64 views
0

Je travaille sur un projet avec deux serveurs de transfert différents. Maintenant, il y a deux branches pour ce projet et Ma question est comment puis-je passer à une autre branche alors que le code n'est pas engagé de la première branche en raison de la progression. En attendant, si j'ai du travail à changer dans une autre branche, comment est-il possible de passer au travail? Merci d'avance.Comment faire pour basculer une autre branche du même référentiel dans Visual Studio TFS

Répondre

0

Vous pouvez utiliser git stash comme Dylan a dit, mais il est aussi utile de garder à l'esprit que vous pouvez commettre à chaque fois que vous voulez. Vous n'avez pas à pousser ce commit jusqu'à la télécommande tout de suite.

Lorsque vous revenez à cette branche, vous pouvez terminer ce que vous faisiez et utiliser commit --amend pour combiner le travail que vous venez de terminer avec le contenu du commit précédent. Ou vous pouvez continuer à vous engager normalement et juste faire un rebasage interactif avant de pousser où vous écrasez le "travail en cours".

0

Oui, il est possible de passer d'une branche à une autre lorsque des travaux non validés sont exécutés sur chaque branche.

Mais une chose à noter: vous devriez remarquer quel travail de dissimulation à appliquer si vous les deux cachent des travaux sur deux branches. Détails comme ci-dessous exemple:

Supposons que vous avez un travail inachevé dans la branche master, tandis que vous voulez passer à la branche dev. Ensuite, vous pouvez utiliser git stash pour stocker le travail non engagé sur la branche master. Et l'élément dans la pile (git stash list) comme:

[email protected]{0} WIP on master: sha-1 message 

Ensuite, vous pouvez passer à la branche dev (git checkout dev) et apporter des modifications. Si vous devez également revenir à la branche master tout en conservant le travail non engagé dans la branche dev. Ensuite, vous pouvez également utiliser git stash pour enregistrer les modifications sur dev branche, et la pile (git stash list) sera:

[email protected]{0} WIP on dev: sha-1 message 
[email protected]{1} WIP on master: sha-1 message 

Maintenant, il a deux Stash fonctionne:

  • Si vous voulez continuer l'inachevé travailler sur master branche, vous devez appliquer le travail [email protected]{1} par git stash apply [email protected]{1}.
  • Si vous souhaitez continuer le travail inachevé sur la branche dev, vous devez appliquer le travail [email protected]{0} par git stash apply [email protected]{0}. Depuis git stash apply appliquer par défaut le dernier travail, vous pouvez également utiliser git stash apply pour appliquer les modifications sur la branche dev.

Plus de détails sur le stit git, vous pouvez vous référer à stashing in git book.

+0

Merci @Marina, je vais essayer à l'avenir. En ce moment, le travail a été fait sur une seule branche. Merci encore. –