From: Rene Herman Date: Mon, 21 Jul 2008 09:11:50 GMT Subject: git pull versus fetch/merge Message-ID: <488452D6.1060508@keyaccess.nl> Good day. A while ago I was here asking about "git pull" versus "git merge" for local branches -- now I see a difference for remote ones that I'm not sure should be there. I gathered before that "git pull " should basically be shorthand for "git fetch , git merge /". Is that correct? I'm seeing a problem I believe with a specific repository: rene@7ixe4:~/src/linux/7ixe4$ git remote show tiwai * remote tiwai URL: git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 Tracked remote branches devel dma-fix for-linus master upstream with "git pull tiwai devel" everything goes well: rene@7ixe4:~/src/linux/7ixe4$ git status # On branch master nothing to commit (working directory clean) rene@7ixe4:~/src/linux/7ixe4$ git branch tmp0 v2.6.26 rene@7ixe4:~/src/linux/7ixe4$ git branch tmp1 v2.6.26 rene@7ixe4:~/src/linux/7ixe4$ git checkout tmp0 Switched to branch "tmp0" rene@7ixe4:~/src/linux/7ixe4$ git pull tiwai devel Updating bce7f79..e0bf09b Fast forward Documentation/sound/alsa/ALSA-Configuration.txt | 17 +- [ ... ] and I get a clean merge. On the other hand, if I try to do this with a fetch/merge, I get: rene@7ixe4:~/src/linux/7ixe4$ git checkout tmp1 Switched to branch "tmp1" rene@7ixe4:~/src/linux/7ixe4$ git fetch tiwai From git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 ! [rejected] devel -> tiwai/devel (non fast forward) ! [rejected] dma-fix -> tiwai/dma-fix (non fast forward) ! [rejected] master -> tiwai/master (non fast forward) rene@7ixe4:~/src/linux/7ixe4$ git merge tiwai/devel Auto-merged sound/pci/ac97/ac97_patch.c Auto-merged sound/pci/emu10k1/emu10k1_main.c Auto-merged sound/pci/hda/patch_analog.c Auto-merged sound/pci/hda/patch_realtek.c CONFLICT (content): Merge conflict in sound/pci/hda/patch_realtek.c Auto-merged sound/pci/hda/patch_sigmatel.c Automatic merge failed; fix conflicts and then commit the result. and me no happy... It probably has something to do with that " ! [rejected]" but what is that about? Is the repo bad? (and if so, I suspect owner will want to know how to avoid it in the future). And if it is bad, should I be seeing something with the pull method also? Moreover... can I now trust my tmp0 branch? Rene.