Le problème
je lance simplement une commande git clone --recursive <repo>
pour cloner une prise en pension avec des sous-modules, il a cloné le repo, mais a échoué lorsque clone sous-modules. Le message d'erreur estclone Git/sous-module obtenir l'erreur « est le dépôt extérieur »
fatal: C:\Users\folderJobs: 'C:\Users\folderJobs' is outside repository
Le folderJobs
était le nom du dossier précédent de cette prise en pension, je ne pas sous-modules à ce moment-là.
Contexte
J'ai un repo utilisé pour synchroniser le code de la machine A à la machine B, la machine B est un serveur avec Job Scheduler pour exécuter des scripts forment plusieurs projets. J'ai précédemment géré un projet server_scripts
qui est la collection de tous les scripts de différents projets. Ce n'était pas une façon parfaite, j'ai donc décidé d'ajouter tous les projets comme sous-module dans ce projet server_scripts
. Je suppose que chaque je dois mettre à jour à la dernière version des scripts, juste besoin d'exécuter
git submodule update --recursive --remote
.
J'ai fait ces changements sur la machine A (mon poste de travail), puis je suis arrivé à la machine B, j'ai supprimé le folderJobs
, parce que je voulais cloner une toute nouvelle copie. Je cours le git clone --recursive
après avoir supprimé folderJobs
. Le nom du dossier précédent était différent du nom du projet, mais cette fois j'utiliserais le même nom de dossier que le nom du projet.
J'ai essayé la même commande sur ma machine A, cela a fonctionné pour différents endroits de mon système de fichiers.
Question
Je suppose que la commande clone
est de créer un dossier flambant neuf de la pension, mais il semble que le Git
rappelle quelque chose sur ma machine B.
Quelqu'un at-il le même message d'erreur lorsque cloner? Je ne sais pas comment le résoudre après avoir dépensé une demi-journée Googling.
Merci pour toute information.
- Informations complémentaires
1> Je vérifié la version Git pour les deux machines, petite différence, est que la raison?
$ git --version
git version 2.14.1.windows.1
$ git --version
git version 2.12.2.windows.1
2> J'ai essayé d'exécuter la commande dans un autre dossier sur la machine B, la même erreur
Salut VonC, merci pour la suggestion. J'ai vérifié les '.gitmodules', seulement deux adresse repo à distance. Il n'y a pas de '.git' dans le dossier supérieur. –
@ZhongDai pouvez-vous vérifier la différence dans 'git config -l' sur les deux systèmes? – VonC