J'aimerais pouvoir stocker uniquement les modifications d'un seul fichier :
git stash save -- just_my_file.txt
Ce qui précède ne fonctionne pas. Y a-t-il des alternatives ?
J'aimerais pouvoir stocker uniquement les modifications d'un seul fichier :
git stash save -- just_my_file.txt
Ce qui précède ne fonctionne pas. Y a-t-il des alternatives ?
Je pense stash -p
est probablement le choix que vous voulez, mais au cas où vous rencontreriez d'autres choses encore plus délicates à l'avenir, n'oubliez pas cela :
Stash
n'est en fait qu'une alternative très simple à l'option légèrement plus complexe branch
ensembles. Stash est très utile pour déplacer les choses rapidement, mais vous pouvez accomplir des choses plus complexes avec des branches sans trop de casse-tête et de travail.
# git checkout -b tmpbranch
# git add the_file
# git commit -m "stashing the_file"
# git checkout master
faire ce que vous voulez, et plus tard, simplement rebase
et/ou merge
la branche tmp. Ce n'est pas vraiment que beaucoup de travail supplémentaire lorsque vous devez faire un suivi plus minutieux que ce que votre réserve vous permet.
Vous pouvez mettre en cache des lignes individuelles de manière interactive avec git stash -p
(analogue à git add -p
).
Il ne prend pas de nom de fichier, mais vous pouvez sauter d'autres fichiers avec d jusqu'à ce que vous atteigniez le fichier que vous voulez mettre en cache et que vous y mettiez toutes les modifications avec a .
La meilleure option est de tout mettre en scène sauf ce fichier, et de dire à stash de garder l'index avec git stash save --keep-index
ce qui permet de conserver le fichier non indexé :
$ git add .
$ git reset thefiletostash
$ git stash save --keep-index
Comme le souligne Dan, thefiletostash
est le seul à être réinitialisé par la cachette, mais il cache aussi les autres fichiers, donc ce n'est pas exactement ce que vous voulez.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.