Re: Report a bug, about track remote repository.
- From
Philip Oakley <philipoakley@iee.org>
- Date
- Oct 20, 2012, 23:46 UTC
- Message-ID
- <F15116C3B49A439AB06C8068F79E4C0F@PhilipOakley>
- In-Reply-To
- <5082F255.9060600@gmail.com>
From: "Cheeray Huang" <cheeray.huang@gmail.com>
Show 24 quoted lines
> Hi, > > I think I found a bug, when I used local branches to track remote > branch. But I'm not very sure, can anyone double check this? I'd like > to finger this out. I think you can reproduce this bug as below steps: > > precondition: > > Suppose that you have a remote branch in repository, named > origin/work. And then you want to track it with a local branch. > > Steps: > > 1. So you can do this: > > git checkout -t origin/work > > now, you have a local branch also named "work" to track "origin/work". > It works nicely, you can use "push/pull" command without any detail > parameters to sync anything with the remote branch. > > 2. Create another branch, ex. named "work2", to track "origin/work" > again, though maybe there are not so many people that will do like > this.
At this point you have created the 'conflict' - You can't have two different branches that both track the same identical remote branch and expect that they can be both different and identical at the same time.
Show 10 quoted lines
> > You will find that local branch "work2" can't "push" to "origin/work". > ex. After you committed something in work2, you typed "git status", > git would tell you: > > Your branch is ahead of 'origin/work' by x commit. > > And then you used "git push", git can't display the information about > changing hash value in remote branch, just printed "everything is up > to date".
Only one push (from two branches trying) can suceed. You either force the remote to match the current branch, and loose any information that it had about the other branch, or the remote stays with one branch. Simply don't do it [that way]. If the local branches are different, then you need distinct remote branches.
Show 14 quoted lines
> > Actually, you can use some exact parameters to solve this, such as: > > git push origin work2:work > > But, I still think it is a bug. > > BTW, I found this bug when I used github. I don't know whether it is > related to github. > > > -- > B&R, > Cheeray