Ah, so fetch is an operation on the entire repository and merge is an operation on a specific branch? So you're say that 'pull'ing each branch is not necessary because the 'fetch' in 'pull's fetch+merge is redundant. Is that correct?
I also don't understand why this is a deficient approach? If each branch is for a bug fix, then wouldn't it make sense to want to be able to work with a branch that has ALL of the bugs fixed? Thanks for your help so far! David On Aug 13, 11:31 am, Konstantin Khomoutov <khomou...@gmail.com> wrote: > On Aug 13, 5:12 am, David Doria <daviddo...@gmail.com> wrote: > > [...]> Then when I update something in Project1, I just do a > > > |[dor...@localhost AllProjects]$ git pull origin Project1 > > > and AllProjects is now up to date. > > It's not clear why you need to pull each branch. Note that pull does > fetch + merge, so each pull makes Git access the remote and ask for > changes. Hence doing multiple pulls in a row would only be sensible if > each of your "ProjectN" branches is hosted in its own remote > repository. > From your last example, it's appears to not be the case, so you should > probably do one fetch followed by multiple merges: > $ git fetch origin > $ git checkout All > $ git merge origin/Project1 > $ git merge origin/Project2 > ... > > > Is there any standard way to make a "script" to pull from a whole > > bunch of projects? Or should I just make a bash script with > > > git pull origin Project1 > > git pull origin Project2 > > etc > > ? > > To me, it appears that if you want such automation, something is > wrong. Having N parallel branches to develop N features and/or fix > bugs is perfectly OK, but having a need to periodically merge them > _all at once_ appears to be a deficient approach. Usually you should > be careful when doing each merge except for no-brainer fast-forwarding > cases, and in your setup fast-forwards should be rare. > > At least, if you will decide to write a shell script doing multiple > merges in a row, start it with > set -e > to make it crash as soon as the current merge command fails due to > conflicts. -- You received this message because you are subscribed to the Google Groups "Git for human beings" group. To post to this group, send email to git-us...@googlegroups.com. To unsubscribe from this group, send email to git-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/git-users?hl=en.