git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: kernel.org git tree corrupt?

From
Linus Torvalds <torvalds@linux-foundation.org>
Date
Mar 2, 2008, 21:16 UTC
Message-ID
<alpine.LFD.1.00.0803021302070.17889@woody.linux-foundation.org>
In-Reply-To
<524f69650803020749o469f2e48l125a55267b0b5d13@mail.gmail.com>
On Sun, 2 Mar 2008, Steve French wrote:
Show 5 quoted lines
>
> In preparation for a merge request I do
>     cg-diff -m -r origin: | diffstat -p1
> (git diff -m -r origin: shows the same problem) and
>     cg-log -m -r origin:

First off, you really should lay off the cogito thing, it's pretty much guaranteed that any cogito usage will just be harder and less likely to be correct than just usign native git (and almost nobody will be able to help you any more - it's not like it's been maintained for the last year).

It *sounds* like your "origin" isn't what you expect it to be. 
> Was the linux-2.6.git rebuilt in the last four weeks with different 
> changeset numbers? Something seems to have drastically changed in the 
> kernel.org tree in the last few weeks.

Nope, nothing has been rebuilt, but there's been another merge window, so there's certainly been drastic changes.

> Doing "cg-log -m -r origin: fs/cifs" shows changesets that are already
> in linux-2.6.git (e.g. the vfs-wide changes to add path_put
> 1d957f9bf87da74f420424d16ece005202bbebd3 and
> 4ac9137858e08a19f29feac4e1f4df7c268b0ba5 )

In that case, your "origin" simply isn't updated, but points somewhere long back in history. I can only assume that cogito has done something wrong, like not been able to handle packed refs or something, and you have an updated tree but "origin" pointing to way back in the history.

> Ideas for another solution short of recloning and sorting through all
> of the last month or two of patches that affect this directory by
> hand?
Do this:
 - get rid of cogito (or at least make sure that it doesn't mess up the 
   following sequence)
 - look at your .git/config file to make sure that the remote branches are 
   sane. It should have something like this (and if it doesn't, add it):
	[remote "origin"]
		url = git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
		fetch = +refs/heads/*:refs/remotes/origin/*
	[branch "master"]
		remote = origin
		merge = refs/heads/master
 - look at your "origin" branch, and make sure it's a *remote* branch, not 
   the old-style local one. Ie it should *not* show up when you do a 
   plain
	git branch
   but it *should* show up (as both "origin/HEAD" and "origin/master") 
   when you do
	git branch -a
   and if it's a local branch (very possible, since you're using cogito 
   that may not even understand remote branches), then just blow it away 
   entirely with "git branch -D origin".
 - do "git fetch" to make sure that the remote branches are up-to-date
 - now do "git log origin" an it should show something recent like
	commit 038f2f725503b55ab76cfd2645915a85594710fe
	Merge: 8d07a67... 855c603...
	Author: Linus Torvalds <torvalds@woody.linux-foundation.org>
	Date:   Sun Mar 2 12:38:17 2008 -0800
	
	    Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux139
	...
 - and if it does, now you should be all good, and you can dothe normal 
   "gitk origin.." and see the commits that are in your tree but not in 
   mine.

Now your setup should be ok again. I *suspect* that what has happened is that you got a local "origin" branch - probably through cogito - that hid the remote one.

		Linus
Previous: Steve FrenchNext: Martin Langhoff
Message 2 of 7 in “kernel.org git tree corrupt?”
  1. Steve FrenchMar 2, 2008
  2. Linus TorvaldsMar 2, 2008
  3. Martin LanghoffMar 2, 2008
  4. Steve FrenchMar 2, 2008
  5. Steve FrenchMar 3, 2008
  6. Linus TorvaldsMar 3, 2008
  7. Steve FrenchMar 4, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.