121 votes

Git commit -a "untracked files" ?

Lorsque je fais un git commit -a Je vois ce qui suit :

  # Please enter the commit message for your changes. Lines starting
  # with '#' will be ignored, and an empty message aborts the commit.
  # On branch better_tag_show
  # Changes to be committed:
  #   (use "git reset HEAD <file>..." to unstage)
  #
  # modified:   ../assets/stylesheets/application.css
  # modified:   ../views/pages/home.html.erb
  # modified:   ../views/tags/show.html.erb
  # modified:   ../../db/seeds.rb
  #
  # Untracked files:
  #   (use "git add <file>..." to include in what will be committed)
  #
  # ../assets/stylesheets/
  # ../views/pages/

Que signifient ces fichiers non suivis ? Toutes les modifications ont été effectivement suivies. Je ne comprends pas pourquoi git m'avertit de la présence de fichiers non suivis.

EDIT :

Ok, je vois beaucoup de réponses confuses. Voici ce qui se passe après que j'ai git commit -a ceci.

# On branch master
nothing to commit (working directory clean)

Comme vous pouvez le constater, il n'y a RIEN d'autre que ces quatre fichiers qui ont été modifiés.

Ma question devrait être reformulée comme suit : Pourquoi git m'avertit-il de la présence de fichiers non suivis alors que toutes les modifications de ce commit ont été suivies ?

En d'autres termes, est l'avertissement non suivi dans le message du commit git inutile ?

127voto

coding_idiot Points 3358

Pour ceux qui ont le même problème, essayez de lancer

git add . qui ajoutera tous les fichiers du répertoire actuel au suivi (y compris les fichiers non suivis) et utilisera ensuite

git commit -a pour valider tous les fichiers suivis.

Comme suggéré par @Pacerier, une doublure qui fait la même chose est

git add -A

35voto

zengr Points 14506

git commit -am "msg" n'est pas identique à git add file y git commit -m "msg"

Si vous avez des fichiers qui n'ont jamais été ajoutés au suivi de git, vous devez toujours faire ce qui suit git add file

La commande "git commit -a" est un raccourci vers un processus en deux étapes. Après avoir que vous modifiez un fichier qui est déjà connu par le repo, vous devez encore dire à la base de données, "Hey ! je veux ajouter ceci aux fichiers stagés et et finalement le livrer à vous". Cela se fait en lançant la commande "git add" en lançant la commande "git add". La commande "git commit -a" permet de mettre en scène le fichier et de le livrer en une seule étape. étape.

Source : "git commit -a" et "git add"

24voto

Travis Delly Points 577

Vous devez taper dans la ligne de commande

git add --all

Cela permettra de valider tous les fichiers non suivis

Edita:

Après la mise en place de vos fichiers, ils sont prêts à être livrés, votre prochaine commande devrait donc être

git commit -am "Your commit message"

17voto

AliFurkan Points 67

Si vous avez des problèmes avec les fichiers non suivis, ce script de 3 lignes vous aidera.

git rm -r --cached .
git add -A
git commit -am 'fix'

Ensuite, il suffit de git push

9voto

Mohamad Points 81
  1. Vous devez d'abord ajouter tous les fichiers non suivis. Utilisez la ligne de commande suivante :

    git add *

  2. Puis valider en utilisant la ligne de commande suivante :

    git commit -a

Prograide.com

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.

Powered by:

X