git sous-module fichiers modifiés état
J'ai ajouté un sous-module dans mon git de l'arborescence de dossiers et n'ai rien changé, mais on le voit modifié. Que dois-je faire à ce sujet?
$ git status
# On branch master
# Changed but not updated:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: example.com/soundmanager
#
no changes added to commit (use "git add" and/or "git commit -a")
J'ai essayé de faire un git sous-module de mise à jour, mais il ne fait rien.
- Je l'ai rencontré quand j'avais un repo git dans un sous-répertoire que je ne connaissais pas, qui m'a causé de la confusion. Il gardait la liste du répertoire que modifié, même si j'avais ajouté les fichiers dans le dépôt parent. Merci pour la question - clarifier les choses bien!
Vous devez vous connecter pour publier un commentaire.
La façon dont le statut de submodules est signalé a beaucoup changé au cours des dernières versions de git, de sorte que vous devrait vraiment inclure la sortie de
git --version
aussi bien pour nous d'être en mesure d'aider avec précision.Cependant, dans tous les cas, la sortie de
git diff example.com/soundmanager
devrait vous en dire plus. Si vous voyez le résultat avec le même nom de commit, mais avec-dirty
ajouté à la nouvelle version, par exemple:... que cela signifie que
git status
dans le sous-module n'est pas propre - essayezcd example.com/soundmanager
et puisgit status
pour voir ce qu'il se passe.Sur l'autre main, si vous voyez différents commettre des versions, par exemple:
... ce qui signifie que la version que votre sous-module est (c'est à dire ce que vous voyez à partir de
cd example.com/soundmanager && git show HEAD
) est différente de la version engagés dans le projet principal de l'arbre (c'est à dire ce que vous voyez à partir degit rev-parse HEAD:example.com/soundmanager
). Si le premier est à droite, vous devez ajouter et valider la nouvelle version de la sous-module dans votre projet principal, avec quelque chose comme:Sur l'autre main, si celle-ci est ce que vous voulez, vous pouvez changer le numéro de version que le sous-module est de:
git version 1.7.0.4
git diff
n'indiquent -sale, et git status a montré tous les fichiers modifiés. Merci pour la réponse, j'étais inquiet au sujet de la modification d'un sous-module et de la commettre. J'ai ajouté + a commis le sous-module, et encore obtenir l'-sale. Ressemble à une ligne se terminant le problème. Je suis allé dans le chemin d'accès et "git add" et a obtenu un défilement de ceswarning: CRLF will be replaced by LF
j'avais autocrlf d'entrée de jeu.git version 1.7.5.1
Installé, et ne plus avoir le problème donc je vais être heureux avec ce résultat pour le moment.git submodule update
sera en réalité la caisse de la sous-module de la version spécifiée dans l'index de "supermodule", plutôt que de la TÊTE, mais dans de nombreux cas, c'est la même chose.Je suis dans cet état par erreur l'ajout d'un sous-module spécifiquement par l'ajout d'un répertoire au lieu de simplement ajouter le contenu d'un nouveau répertoire.
J'avais besoin il suffit de supprimer le sous-module comme ceci:
Puis ajouter le contenu comme je l'ai prévu en premier lieu:
J'ai utilisé le suivi de commande git et de résoudre ce problème: