Je suis confronté à des problèmes avec la commande git checkout. S'il vous plaît aider.
Voici ce que j'ai fait.
Liste des commandes utilisées et détails de l'erreur:
git clone [my repo]
git checkout -b b01
Par la suite, j'ai apporté plusieurs modifications, notamment la création de nouveaux fichiers et répertoires, les ai validées et correctement transférées vers le référentiel. comme:
git Push -u Origin b01
Maintenant, j'ai terminé les modifications et je souhaite les fusionner avec la branche principale. Alors je fais un:
git checkout master
Voici l'erreur qu'elle jette:
fatal: cannot create directory at 'workfolder': Permission denied
Git me garde en b01, mais supprime TOUS les fichiers que j'avais créés dans la branche. Donc, si je fais maintenant une
git status
ça me montre:
On branch b01
Your branch is upto date with 'orgin/b01'
Changes not staged for commit:
(use "git add/rm .....)
deleted: new file1
deleted: new file2
<list of the new files I had added but which got deleted as a result of the command>
Je dois courir un
git checkout -- .
pour restaurer les fichiers.
S'il vous plaît aider.
J'ai eu une situation similaire. Bien que ce soit à cause de ma solution ouverte dans Visual Studio. Fermer Visual Studio et faire une réinitialisation git - dure (seulement si vous ne craignez pas de perdre du travail) me placent dans une bonne position.
C'est à dire. vérifiez si des processus bloquent le dossier/les fichiers.
Premièrement, entre chaque opération avec git, je vous recommande de faire un git status
rapide. Je ne peux pas vous dire combien de fois cela m'a sauvé beaucoup de maux de tête.
Quelques choses que je pourrais essayer d’éclairer sur le (s) problème (s):
Vous avez dit que vous avez créé des répertoires et apporté de nombreuses modifications à b01, puis que vous les avez transférées à l'origine. Regardez le commit pour cette action `git show. Avez-vous modifié les autorisations sur le répertoire parent du "dossier de travail"? Cela pourrait être utile .
Êtes-vous sur Windows? Si vous êtes, quelle est votre profondeur dans les chemins de répertoire? La longueur du chemin dépasse-t-elle windows max? Référence ici .
Si aucune de ces solutions ne fonctionne, avez-vous essayé de créer une branche jetable à partir de b01 et de fusionner le "maître"? Cela fume parfois une cause.
La vilaine grêle, Marie. Avez-vous essayé de faire un copier/coller de "b01" en dehors du référentiel, en revenant au dernier commit correspondant de "master", puis en collant les modifications dans la copie "b01" sur le master? Lorsque les choses sont totalement à l’envers et n’ont pas de sens, il est parfois plus facile de remonter le problème en arrière pour déterminer ce qui a mal tourné et savoir ce qu’il ne faut pas faire à l'avenir.