Git me dit de tirer, puis de commettre, puis de tirer?
Je suis en train de pousser de nouveaux changements, mais j'ai un fichier en conflit. Après avoir essayé de pousser, j'obtiens l'erreur suivante:
Merge the remote changes (e.g. 'git pull') before pushing again. See the
'Note about fast-forwards' section of 'git push --help' for details.
Ok, donc nous avons besoin d'utiliser la commande git pull.
J'essaie d'utiliser git pull
et puis j'ai cette erreur:
error: Your local changes to the following files would be overwritten by merge:
db/profile_edit.php
Please, commit your changes or stash them before you can merge.
Mais, lorsque je tente de commettre, je reviens à la première erreur. Que dois-je faire? Les changements sur la télécommande pensions sont plus récents que ceux sur ma machine locale. Alors, comment puis-je l'ouvrir avec un outil de comparaison et de faire les changements et ensuite indiquer à git que j'ai fait des changements de sorte qu'il me permettra de pousser changements?
source d'informationauteur egidra
Vous devez vous connecter pour publier un commentaire.
Essayer de faire
Pour tirer à distance des changements avant le vôtre, puis valider. Et voir si cela fonctionne.
Si cela ne fonctionne pas, essayez plutôt ceci:
Pour enregistrer vos modifications sur le
stash
s'appliquent à distance s'engage à l'intérieur de votre travail-référentiel, et ensuite appliquer vos modifications (enregistré enstash
) à l'intérieur de votre travail-référentiel de nouveau.Tout d'abord, je pense que si vous étiez à
git add
puisgit commit
votre local pensions serait assez propre pour faire ungit pull
.Cependant, si il peut y avoir des modifications que vous ne voulez pas commettre jusqu'à ce que vous voyez ce qui s'est passé en amont, vous pouvez utiliser
git stash
. Il sera temporairement nettoyer votre répertoire de travail, puis enregistrez vos modifications, de sorte que vous pouvez tirer (je recommandegit pull --rebase
pour éviter la fusion des points - mais c'est une question de goût personnel). Une fois que vous avez changements en amont tiré, vous pouvez obtenir vos modifications locales en arrière en utilisantgit stash pop
. Après le nettoyage de conflits et de se débarrasser de l'inutile changements, vous pouvez ajouter, de valider, puis enfin pousser.Vous vous êtes-vous confus avec les commandes.
git commit
enregistre les modifications dans le dépôt git de la base de donnéesgit pull
apporte à distance s'engage dans votre repoVous essayez de pull avec les modifications non validées, de sorte que git est de vous demander de vous commettre ceux de la première (ou
git stash
loin), de sorte qu'il peut fusionner vos modifications locales avec la télécommande.