95 votes

Git ajoute tous les sous-répertoires

J'ai des difficultés à ajouter un dossier et tous ses sous-répertoires à mon dépôt git. Je me suis rendu compte que c'est une question très populaire après avoir fait quelques recherches sur Google et j'ai essayé toutes les suggestions sans succès, en particulier la suggestion de la page d'accueil du site Web de l'entreprise. Page de manuel sur git-add . J'ai même essayé git add -A sans succès. Pour simplifier, disons que j'ai initialisé mon dépôt git comme suit Dir1 . J'ai ensuite la structure de répertoire de fichiers suivante.

Dir1/file1-1.txt
Dir1/file1-2.txt
Dir1/Dir2/file2-1.txt
Dir1/Dir2/Dir3/file3-1.txt

Mes fichiers réels ont des sous-répertoires qui s'étendent sur 5-6 niveaux de profondeur, alors existe-t-il une commande git pour ajouter tous les fichiers de chaque sous-répertoire à mon dépôt ? Actuellement, lorsque je fais la suggestion de la page de manuel git add Dir1/\* Je peux voir Dir2 dans mon dépôt, mais il apparaît comme un dossier vert et je ne peux pas l'ouvrir, ce qui m'amène à croire que tous les fichiers/dossiers dans Dir2 n'a pas été ajouté. Toute aide serait grandement appréciée. Je suis un nouvel utilisateur de git (moins d'une semaine d'utilisation), alors essayez de garder vos instructions au niveau d'un débutant.

0voto

samato Points 1

Très probablement le fichier .gitignore s sont en jeu. Notez que les fichiers .gitignore peuvent apparaître non seulement au niveau de la racine du repo, mais aussi à n'importe quel sous-niveau. Vous pouvez essayer ceci à partir du niveau racine pour les trouver :

trouver . -name ".gitignore"

puis examinez les résultats pour voir ce qui pourrait empêcher vos sous-répertoires d'être ajoutés.

Il se peut également que des sous-modules soient impliqués. Vérifiez les fichiers ".gitmodules" dans les répertoires incriminés.

0voto

Ash Kumar Points 1

J'ai déjà rencontré ce problème, lorsque le nom du (sous-)dossier que j'essayais d'ajouter commençait par "_quelque chose_".

J'ai enlevé les underscores et ça a marché. Vérifiez que votre dossier ne contient pas de caractères qui pourraient causer des problèmes.

0voto

T.M15 Points 137

Si pour quelqu'un git add . ne fonctionne pas (comme dans mon cas aussi), utilisez git add ./* qui inclut tous les fichiers de tous les sous-répertoires. Ma structure de répertoire est la suivante :

MainDirectory
|_.git
|_README
|_folder1
|   |_file1
|   |_file2
|   |_subfolder1
|   |    |_file3
|   |    |_file4
|   |_subfolder2
|        |_file5
|        |_file6
|_folder2 
|   |_file1
|   |_file2
|   |_subfolder1
|   |    |_file3
|   |    |_file4
|   |_subfolder2
|        |_file5
|        |_file6
|_otherfiles

en faisant git add ./* comprend tout ce qui se trouve à l'intérieur d'un niveau de profondeur ou plus tandis que git add . n'ajoutait que les fichiers au niveau actuel.

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