Comment résoudre les conflits de code git pull dans les projets open source ?
仅有的幸福
仅有的幸福 2017-05-02 09:50:07
0
2
663

Supposons que j'utilise un projet open source. Afin de garder le github officiel racine synchronisé à tout moment, j'utilise git clone le projet localement et j'effectue un développement secondaire. La plupart de mon développement secondaire n'entrera pas en conflit avec les fichiers principaux officiels. . Oui, mais les fichiers individuels seront toujours en conflit. .

Par exemple, après un certain temps, j'ai apporté quelques modifications à mon ordinateur local. Il s'agit du référentiel officiel qui a également apporté quelques modifications et publié une petite version

.

Pour le moment, je souhaite mettre à jour la dernière version officielle Lors de l'utilisation de git pull, un conflit sera provoqué. Ensuite, un problème surviendra

.

Développement secondaire de projets open source. Comment obtenir la dernière version via git pull à tout moment et conserver les modifications locales ?

Ce que je fais maintenant

S'il y a un conflit lorsque git pull obtient la dernière mise à jour officielle

Utilisez git stash pour mettre en cache les modifications locales.
Puis git pull pour télécharger la dernière version officielle
Puis git stash pop pour fusionner les modifications locales dans le code et résoudre manuellement les conflits

Je l'ai brièvement testé et je n'ai trouvé aucun problème, car je n'ai pas besoin de pousser le code vers l'entrepôt officiel, donc je n'en ajoute généralement pas, mais après cette expérience, j'ai apporté quelques modifications et le responsable l'a mis à jour encore quelque chose

L'utilisation de git pull ne fonctionne toujours pas. Je dois utiliser git add local. Ensuite, répétez les étapes de stockage ci-dessus pour conserver les mises à jour et fusionner les conflits,

.

Je ne sais pas si ce que j’ai fait est correct ou existe-t-il une meilleure façon ?

仅有的幸福
仅有的幸福

répondre à tous(2)
阿神

Pas besoin de cacher, il suffit de valider d'abord les modifications, puis de tirer pour résoudre le conflit.

刘奇

En fait, si vous avez déjà effectué un commit local (git commit), vous n'avez pas besoin de git stash d'abord avant d'extraire les modifications à distance. Juste git pull ou git fetch puis git merge.
Bien sûr, si vous n'avez pas effectué de commit local (git commit) avant de tirer, il n'y a aucun problème avec votre opération ci-dessus. Cependant, vous pouvez également d'abord terminer les modifications locales, puis les soumettre avant de tirer ( git pull). .
En fait, votre git stash situation d'application n'est pas adaptée git stash est généralement utilisée lorsque vous êtes à mi-chemin du travail sur une certaine branche (cela ne vaut pas la peine de faire un commit ou vous ne voulez pas le valider). all), et vous avez soudainement envie de passer à une autre branche pour faire autre chose. En ce moment, utiliser git stash est parfait.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal