Pourquoi le git stash n’est-il pas unique par twig?

Je suppose que cela permet de déplacer les changements d’une twig à l’autre, mais c’est ce à quoi sert la sélection des cerises et si vous ne vous engagez pas à modifier vos changements, vous ne devriez peut-être pas les déplacer?

J’ai parfois appliqué la mauvaise réserve à la mauvaise succursale, ce qui m’a amené à me poser des questions sur cette question.

Comme mentionné précédemment, si vous souhaitez un «cache par twig», vous voulez vraiment que la nouvelle twig se détache de la twig existante.

En outre, outre le fait déjà mentionné que la réserve vous permet de tirer une twig sur laquelle vous travaillez, elle vous permet également de changer de twig avant de tout valider. Ceci est utile non pas pour choisir à la cerise au sens habituel autant que pour choisir votre copie de travail .

F.ex., tout en travaillant sur une twig de fonctionnalités, je remarque souvent des bugs mineurs ou des impuretés cosmétiques dans le code qui ne sont pas pertinentes pour cette twig. Eh bien, je répare tout de suite. Quand le temps vient de s’engager, je commets sélectivement les modifications pertinentes, mais pas les correctifs et les produits cosmétiques. Au lieu de cela, je les range, ce qui me permet de passer à ma twig minor-fixes-sur-stable, où je peux ensuite appliquer le cache et valider chaque correction mineure séparément. (En fonction des changements en question, je vais également en cacher certains encore une fois, pour passer à une twig différente, où je les applique.)

Cela me permet de plonger dans le mode de programmation lorsque je travaille et de ne pas m’inquiéter de la bibliothéconomie de mon code. Puis, quand je fais une pause mentale, je peux revenir en arrière et sortinger soigneusement mes changements dans toutes les bonnes étagères.

Si la réserve n’était pas globale, ce type de stream de travail serait beaucoup plus difficile à réaliser.

A partir de Git 1.6, vous pouvez maintenant appliquer des masques aux twigs en utilisant

 git stash branch name_of_new_branch 

Git va créer la nouvelle twig pour vous, et vérifiez-la! Pour plus d’informations, voir

  • le livre de git

  • info git-stash et recherche sur option = branch .

Je suppose que vous pouvez déplacer des caches en utilisant

 git stash branch  [] 

et pour voir une liste de vos caches, utilisez

 git stash list 

Référence

Si vous voulez un “cache” qui fonctionne sur une twig, faites-le pour stocker vos modifications sur une nouvelle twig de votre twig actuelle.

 git checkout -b new_stash git commit -a -m "stashed changes" 

défaire la cachette

 git reset HEAD^ git branch -d new_stash 

git stash est particulièrement utile parce que vous pouvez extraire des modifications dans un arbre sale, c’est-à-dire si vous avez des modifications exceptionnelles et que vous voulez en faire un

 git pull 

et vous ne pouvez pas, vous pouvez cacher vos modifications, tirez puis appliquez la cachette

 git stash git pull git stash apply git stash clear 

j’espère que ça a aidé!

git-stash m’est le plus utile pour déplacer les modifications non encore enregistrées dans une twig différente de celle actuellement extraite.

Par exemple, je me trouve souvent à effectuer des modifications simples sur une twig de correction de bogues; seulement pour constater qu’un changement sur lequel je travaille est plus complexe que ce que je pensais. Git-stash est le moyen le plus simple de déplacer cet ensemble de modifications vers une twig différente.