Comment puis-je mettre en scène et livrer tous les fichiers, y compris les fichiers nouvellement ajoutés, en utilisant une seule commande ?

Comment puis-je mettre en scène et livrer tous les fichiers, y compris les fichiers nouvellement ajoutés, en utilisant une seule commande ?

Solution

Fait

git add -A && git commit -m "Your Message"

compte-t-il comme une "commande unique" ?

Modification basée sur la réponse de @thefinnomenon's ci-dessous :

Pour l'avoir comme un git alias, utilisez :

git config --global alias.coa '!git add -A && git commit -m'

et commiter tous les fichiers, y compris les nouveaux fichiers, avec un message avec :

git coa "A bunch of horrible changes"

Explication (de la [documentation git add][1]) :

-A, --all, --no-ignore-removal

Met à jour l'index non seulement lorsque l'arbre de travail possède un fichier correspondant à <pathspec> mais également lorsque l'index possède déjà une entrée entrée. Ceci ajoute, modifie et supprime les entrées de l'index pour qu'elles correspondent à l'arbre de travail. l'arbre de travail.

Si aucun <pathspec> n'est donné lorsque l'option -A est utilisée, tous les fichiers de l'arbre de travail entier sont mis à jour. l'arbre de travail entier est mis à jour (les anciennes versions de Git limitaient la mise à jour au répertoire courant). mise à jour au répertoire courant et à ses sous-répertoires).

[1] : https://git-scm.com/docs/git-add#git-add--A

la règle d'édition de 6 caractères est idiote -->

Commentaires (6)

Cette commande ajoutera et livrera tous les fichiers modifiés, mais pas les fichiers nouvellement créés.

git commit -am  ""

Tiré de man git-commit :

   -a, --all
       Tell the command to automatically stage files that have been modified
       and deleted, but new files you have not told Git about are not
       affected.
Commentaires (5)

Vous pouvez écrire un petit script (regardez la réponse de Ian Clelland) appelé git-commitall qui utilise plusieurs commandes git pour réaliser ce que vous voulez faire.
Placez ce script n'importe où dans votre $PATH. Vous pouvez l'appeler par git commitall ... très pratique !

Trouvé ici (la question et toutes les réponses sont malheureusement supprimées, elles ne sont visibles qu'avec une réputation élevée)

Commentaires (4)