2012-08-08 6 views
3

Notre équipe a récemment commencé à utiliser Git.Comment se débarrasser des messages automatiques "merge branch ..." dans le dépôt git

Le principal flux de travail que nous faisons est simple, (comme nous ne sommes pas encore ninjas formés sur les commandes et les flux de travail plus complexes avec elle):

  1. Developer Un nouveau code engage (quelques commits).
  2. Le développeur A pousse les modifications au référentiel principal.
  3. Le développeur B s'engage, essaie de pousser (reçoit un message disant qu'il doit PULL).
  4. Le développeur B tire, puis pousse.

Après un certain temps, le journal référentiel ressemble à ceci:

enter image description here

Je voudrais éviter cela, car il rend le journal à peu près illisible, sans parler, dans certains cas, le ' fusionner 'qui se passe ne change aucun fichier (je ne vois pas de changement fait par celui-ci). Faisons-nous quelque chose de mal dans la façon dont nous travaillons avec Git? devrions-nous le faire différemment?

+0

Voir aussi: http://stackoverflow.com/questions/4138285/block-push-of-trivial-merge-to-git-server –

Répondre

4

Vous ne faites rien de mal, c'est juste l'enregistrement de Git qu'une modification a été apportée au référentiel en fusionnant deux ensembles de changements.

Si vous utilisez git rebase avant d'appuyer sur, ou git pull --rebase lorsque vous tirez, les validations de fusion ne seront pas conservées dans l'historique. Voir http://arjanvandergaag.nl/blog/clarify-git-history-with-merge-commits.html pour plus.

+0

TortoiseGit n'offre pas l'option "pull --rebase" dans son interface utilisateur. Y a-t-il un autre outil d'interface utilisateur qui soit meilleur alors? –

+0

Je ne sais pas, désolé, je n'utilise que les outils en ligne de commande. Il doit y avoir un moyen de rebaser dans TortoiseGit, si vous ne pouvez pas le faire en tirant alors vous devriez être capable de faire une étape de rebasement explicite. Si TortoiseGit n'a pas de commande Rebase, vous pouvez définir la branche sur _always_ rebase lorsque vous exécutez la commande 'git config branch. .rebase true' –

+0

Le flux de rebasage ne se prête pas vraiment à l'interface utilisateur graphique – Richard