2010-06-18 3 views
1

J'ai fait un workflow de création d'un dépôt git sur un dépôt central distant, clonant ce repo sur ma machine de développement locale, en travaillant , puis en repoussant les modifications vers le même référentiel sur le serveur distant.Correction de l'avertissement git: "mise à jour de la branche actuellement retirée, cela peut causer de la confusion"

Cependant, et je crois que ce fut après une mise à jour je l'ai fait git récemment, après avoir poussé un changement, je reçois l'avertissement suivant:

Counting objects: 2724, done. 
Delta compression using up to 2 threads. 
Compressing objects: 100% (2666/2666), done. 
Writing objects: 100% (2723/2723), 5.90 MiB | 313 KiB/s, done. 
Total 2723 (delta 219), reused 0 (delta 0) 
warning: updating the currently checked out branch; this may cause confusion, 
as the index and working tree do not reflect changes that are now in HEAD. 

Quelqu'un peut-il me expliquer exactement ce que cet avertissement signifie, et ce que je fais mal dans mon flux de travail pour ne pas recevoir cet avertissement?

Répondre

2

Git possède deux types de référentiels. L'un est votre dépôt régulier que vous vérifiez. L'autre est un "repo nu". Le premier contient une copie de travail de votre code avec un répertoire .git qui héberge l'historique. Vous pouvez cloner à partir d'un tel référentiel, mais si vous essayez de repasser dessus, il est tout à fait possible que l'état du projet dans le répertoire .git ne soit plus synchronisé avec l'index (zone de transfert) et la copie de travail sur le référentiel.

Ceci est l'avertissement que vous voyez. Le moyen de le réparer serait de faire de votre "dépôt central distant" un simple repo. Vous pouvez le faire en utilisant git init --bare. Si vous faites cela, vous ne pouvez pas l'utiliser comme zone de travail. Il ne peut être utilisé que comme télécommande. Maintenant, vous pouvez pousser à cela et en tirer, mais ne pouvez pas travailler directement là-bas.

+0

Ah, d'accord, je vais essayer. Je n'aurai pas besoin de travailler sur le repo à distance directement, donc cela ressemble exactement à ce que je devrais faire. – joeellis

Questions connexes