Subject: Re: Integration-Manager Workflow

From: Adrián Ribao Martínez <[email-masked]>
Date: Sat, 16 Jan 2010 20:47:37 +0100

> Adrián Ribao Martínez writes:
> 
> > What happens if they accidentally work in the develop branch instead of creating a new one? What should we do?
> > I think I should never fetch from teamx.myserver.net to avoid this problem and instead track the branch like in step 2. Is this correct?
> 
> It is simpler than that.
> 
> If you just use "git remote add teamx teamx.myserver.net:/...." (rather
> than cloning your integration repository from one of those
> repositories), it will leave all your local branches alone -- any
> changes to teamx.myserver.net's "develop" branch will only show up in
> the teamx/develop tracking branch.

I think this is a stupid question but, how do I bring the feature1 branch from teamx to my local repository?

> 
> The reason is that a fetch or pull only merges into your develop branch
> if your branch.develop.merge git-config entry specifies an upstream
> branch -- more detail can be found in the git-config man page under
> branch.<name>.remote and branch.<name>.merge.
> 
> Those entries are set up when you clone from a repository, and through
> some other commands, but if teamx clones from the integration server,
> they can only mess up their own develop branch.  If/when you push into
> teamx's repository from yours, you can forcibly overwrite any of those
> accidental changes.  (Normally, though, the push would only do a
> fast-forward merge -- so if teamx made such a mistake, the merge will
> fail until you address the mismatch.)

I'm not sure if I understand.

1. I bring the feature1 to my local repository.
2. Check if everything is ok
3. Merge or rebase the branch into develop
4. Push the develop changes into the in central repository
5. Push and force the develop changes into the teamx server
6. The developers pull their local repositories from teamx server

Is this correct? What are the commands for all those actions?

> Michael Poole

Thank you.