Comment ranger les modifications dans le dossier en cours?
Je voudrais ranger les changements que les modifications dans le dossier en cours et il est sous-dossiers.
Comment puis-je y parvenir?
J'ai essayé l'approche évidente - git stash .
mais il ne semble pas fonctionner.
Je sais que je peux créer temporaire s'engage et les supprimer par la suite, mais je veux savoir si git stash
prend en charge accrocher des dossiers spécifiques.
Quelle est l'erreur que vous obtenez?
Je reçois la section d'aide pour
Vous ne pouvez pas.
vous avez raison dans ce que plaine
Je reçois la section d'aide pour
git stash
commandeVous ne pouvez pas.
git stash
met de côté les modifications non validées dans l'arbre de travail.vous avez raison dans ce que plaine
git stash
. Mais à l'aide de git stash -k
et soigneusement préparation de l'index, il PEUT être fait - voir ma réponse.git stash push -- path/to/folder
devrait être utilisé - fonctionne pour moi. S'il vous plaît, accepter la réponse ci-dessous par @gorpacrate.OriginalL'auteur stdcall | 2013-05-08
Vous devez vous connecter pour publier un commentaire.
Fait le truc pour moi.
OriginalL'auteur gorpacrate
git stash
ne vous permettra pas d'enregistrer partielle des répertoires en une seule commande, mais il existe quelques solutions de rechange.Vous pouvez utiliser
git stash -p
pour ne sélectionner que les diffs que vous souhaitez ranger.Si la sortie de
git stash -p
est énorme et/ou que vous voulez un scriptable solution, et il est acceptable de créer temporaire s'engage, vous pouvez créer un commit avec tous les changements, mais ceux dans le sous-répertoire, puis ranger les changements, et de rembobiner les commettre. Dans le code:Quel est le problème? Pourquoi ne pas travailler?
Il imprime le diff de toutes les modifications dans l'arborescence du projet, puis-je sélectionner manuellement les fichiers dans le dossier que je veux. Je ne sais même pas les noms des fichiers dans ce dossier. ce n'est pas une solution viable à mon problème
Il est acceptable pour vous de créer temporaire s'engage à résoudre le problème?
Je peux même
git add
les fichiers dans la zone de transit, mais je veux utiliser pour accrocher...OriginalL'auteur Marco Leogrande
Cela devrait fonctionner pour vous:
Fondamentalement, il ajoute tous les fichiers modifiés à l'index, à l'exception de dossier (ou fichiers) que vous souhaitez ranger. Ensuite, vous les ranger à l'aide de
-k
(--keep-index
). Et enfin, vous réinitialisez index retour à l'endroit où vous avez commencé.git stash -k
laissera l'indice intacte, de sorte que des modifications dans l'index ne sera pas supprimée, mais la nouvelle cachette les changements de l'indice de et ceux qui ne sont pas en elle, de sorte qu'il sera un "plein" de cachette en tout cas.OriginalL'auteur mvp
Vous pourriez checkout l'un de l'interface graphique de git interfaces comme SourceTree ou TortoiseGit, ce genre de choses sont ce que j'ai personnellement aller à la tortue pour qu'elle se termine juste en haut étant beaucoup plus rapide que d'essayer de faire beaucoup de ligne de commande commandes.
OriginalL'auteur Xylarax