web-dev-qa-db-fra.com

TortoiseGit: Quelle est la différence entre "Git Sync", "Fetch" et "Pull"?

Je me déplace de TortoiseSvn à TortoiseGit. Mais rencontré quelques difficultés inattendues.

Mon paradigme de travail est aussi simple que:

  1. Code de sortie
  2. Changer du code
  3. Partager avec d'autres pour la révision du code
  4. Valider les modifications

Pourquoi se donner la peine d’avoir les commandes 3 syntactically similaires ci-dessous?

Et Pull et Fetch partagent même l’icône identique. Quelle conception conviviale!

 enter image description here

7
smwikipedia

Ce sont trois commandes différentes:

  1. Git pull est un git fetch suivi de git merge - lire ici
  2. Git fetch va chercher des informations sur les dépôts distants - lire ici
  3. Git sync fait tout en une commande signifiant pull et Pushlire ici

Si vous souhaitez comparer les flux de travail git et svn, git pull est semblable à svn update. Il n'y a pas de version svn directe de git fetch. Git sync est comme svn up && svn commit en une seule commande

17
Tomasz Madeyski

Vous pouvez faire une extraction git à tout moment pour mettre à jour vos branches de télé-suivi sous refs/remotes //.

git fetch operation ne change jamais aucune de vos propres succursales locales sous les références/têtes, et vous pouvez le faire en toute sécurité sans modifier votre copie de travail. J'ai même entendu parler de personnes exécutant git fetch régulièrement dans un travail cron en arrière-plan (bien que je ne recommande pas de le faire).

git pull est ce que vous feriez pour mettre à jour une branche locale avec sa version distante , tout en mettant à jour vos autres branches de suivi à distance.

0
Saurabh Oza