From: Martin Langhoff Date: Thu, 12 Apr 2007 06:00:30 GMT Subject: Re: git-branch, older repos and more confusion Message-ID: <46a038f90704112300k3abd66d0nc4372962dbee8616@mail.gmail.com> In-Reply-To: <20070412052118.GA30459@coredump.intra.peff.net> On 4/12/07, Jeff King wrote: > > Any hints as to how to run such workflow on v1.5.x? > > This will seem like repetition, but it's like this: Thanks for bearing with me ;-) > git-clone mydir > cd mydir > git-checkout --track -b v1.9-clientname origin/v1.9-maint > git-push origin v1.9-clientname # to create the new head remotely > > When you do a git-pull without arguments from the v1.9-clientname > branch, it will first do a fetch of origin (grabbing the entire state, > including the v1.9-maint branch) and then merge in origin's v1.9-maint. Almost what I am after, but not quite. In my Cogito workflow, cg-update will by default pull from v1.9-clientname, which is what you want most of the time (collaborating with other developers on that branch). We do cg-update/cg-push all the time, and cg-update is a less frequent operation. On my own I had gotten almost to the same sequence you show above, but couldn't get it right. With what you are showing me now, I'd say git-clone mydir cd mydir git-checkout -b tmpbranch origin/v1.9-maint git-push origin v1.9-clientname # to create the new head remotely git-checkout --track -b v1.9-clientname origin/v1.9-clientname git-deletebranch tmpbranch # this command doesn't exist! And then git-pull / git-push will "do the right thing". And `git-pull origin/v1.9-maint` will trigger a fetch & merge. > When you do a push without arguments, it will push every head you have > in common with origin. That's interesting! cheers, m