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
Vous devez utiliser la commande git stash pour cela (vous devez le faire depuis la ligne de commande).
https://www.kernel.org/pub/software/scm/git/docs/git-stash.html
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".
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}
pargit stash apply [email protected]{1}
. - Si vous souhaitez continuer le travail inachevé sur la branche
dev
, vous devez appliquer le travail[email protected]{0}
pargit stash apply [email protected]{0}
. Depuisgit stash apply
appliquer par défaut le dernier travail, vous pouvez également utilisergit stash apply
pour appliquer les modifications sur la branchedev
.
Plus de détails sur le stit git, vous pouvez vous référer à stashing in git book.
Merci @Marina, je vais essayer à l'avenir. En ce moment, le travail a été fait sur une seule branche. Merci encore. –
Merci @Dylan, va essayer cela aussi & lien est également utile. –