# cg-update (cogito-0.13) bug: changed heads

5 messages from 2005-09-06 to 2005-09-07. Participants: H. Peter Anvin, Petr Baudis, Junio C Hamano.
Thread: https://gitlist.dev/t/1739

## H. Peter Anvin, 2005-09-06 21:01

Subject: cg-update (cogito-0.13) bug: changed heads
Message-ID: <431E03A5.6060709@zytor.com>
URL: https://gitlist.dev/e/431E03A5.6060709%40zytor.com

```
I just found a bug in cogito-0.13, at least to the best of my 
understanding of the situation.

Simplified, the problem looks like this: two sides, A and B, pull from 
repository C.  The head of this pull we call 0.

Now commit 1 is added to A.  B pulls commit 1 from A, not though C. 
Later, A pushes commit 1 to C.

Next time B tries to pull from C, cg-update will not advance 
refs/heads/origin, even though C now has a new head.  Thus, B will think 
that C is in a different state than it actually is.

This has, for me, broken safeguards of the form "make sure you're merged 
before you pull."

	-hpa

```

## Petr Baudis, 2005-09-06 23:17

Subject: Re: cg-update (cogito-0.13) bug: changed heads
Message-ID: <20050906231756.GC26934@pasky.ji.cz>
URL: https://gitlist.dev/e/20050906231756.GC26934%40pasky.ji.cz
In-Reply-To: <431E03A5.6060709@zytor.com>

```
Dear diary, on Tue, Sep 06, 2005 at 11:01:25PM CEST, I got a letter
where "H. Peter Anvin" <hpa@zytor.com> told me that...
> I just found a bug in cogito-0.13, at least to the best of my 
> understanding of the situation.
> 
> Simplified, the problem looks like this: two sides, A and B, pull from 
> repository C.  The head of this pull we call 0.
> 
> Now commit 1 is added to A.  B pulls commit 1 from A, not though C. 
> Later, A pushes commit 1 to C.
> 
> Next time B tries to pull from C, cg-update will not advance 
> refs/heads/origin, even though C now has a new head.  Thus, B will think 
> that C is in a different state than it actually is.

So, C surely has its head updated? Does cg-update "fail" silently, or
does it utter anything?

-- 
				Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
If you want the holes in your knowledge showing up try teaching
someone.  -- Alan Cox

```

## H. Peter Anvin, 2005-09-06 23:23

Subject: Re: cg-update (cogito-0.13) bug: changed heads
Message-ID: <431E24FF.2000700@zytor.com>
URL: https://gitlist.dev/e/431E24FF.2000700%40zytor.com
In-Reply-To: <20050906231756.GC26934@pasky.ji.cz>

```
Petr Baudis wrote:
> Dear diary, on Tue, Sep 06, 2005 at 11:01:25PM CEST, I got a letter
> where "H. Peter Anvin" <hpa@zytor.com> told me that...
> 
>>I just found a bug in cogito-0.13, at least to the best of my 
>>understanding of the situation.
>>
>>Simplified, the problem looks like this: two sides, A and B, pull from 
>>repository C.  The head of this pull we call 0.
>>
>>Now commit 1 is added to A.  B pulls commit 1 from A, not though C. 
>>Later, A pushes commit 1 to C.
>>
>>Next time B tries to pull from C, cg-update will not advance 
>>refs/heads/origin, even though C now has a new head.  Thus, B will think 
>>that C is in a different state than it actually is.
> 
> 
> So, C surely has its head updated? Does cg-update "fail" silently, or
> does it utter anything?
> 

C has its head updated, yes.  cg-update says "Branches already fully 
merged."

	-hpa

```

## H. Peter Anvin, 2005-09-07 01:36

Subject: Re: cg-update (cogito-0.13) bug: changed heads
Message-ID: <431E4409.50307@zytor.com>
URL: https://gitlist.dev/e/431E4409.50307%40zytor.com
In-Reply-To: <431E24FF.2000700@zytor.com>

```
H. Peter Anvin wrote:
>>
>> So, C surely has its head updated? Does cg-update "fail" silently, or
>> does it utter anything?
> 
> C has its head updated, yes.  cg-update says "Branches already fully 
> merged."
> 

OK, now later in the day I could not reproduce this on another box. 
Either the situation was different enough, or I did something else wrong.

	-hpa

```

## Junio C Hamano, 2005-09-07 02:17

Subject: Re: cg-update (cogito-0.13) bug: changed heads
Message-ID: <7vhdcxbozq.fsf@assigned-by-dhcp.cox.net>
URL: https://gitlist.dev/e/7vhdcxbozq.fsf%40assigned-by-dhcp.cox.net
In-Reply-To: <431E4409.50307@zytor.com>

```
"H. Peter Anvin" <hpa@zytor.com> writes:

> H. Peter Anvin wrote:
>>>
> OK, now later in the day I could not reproduce this on another box. 
> Either the situation was different enough, or I did something else wrong.

One thing that comes to mind, which may or may not be relevant
to your situation, is which branch you were on when you ran
cg-update.  I cannot speak for Pasky and I do not use Cogito,
but the 'git fetch' and 'git pull' commands that come with core
GIT used to have a funny interaction of fetch attempting to
update the branch head ref if your working tree happened to be
on that branch, which was fixed some time ago.

```
