# Re: v2.6.11 tag in kernel tree

4 messages from 2006-11-30 to 2006-11-30. Participants: Linus Torvalds, Jon Smirl, Junio C Hamano.
Thread: https://gitlist.dev/t/43516

## Jon Smirl, 2006-11-30 04:02

Subject: v2.6.11 tag in kernel tree
Message-ID: <9e4733910611292002o289dc4d1u7bde2d457fa97d73@mail.gmail.com>
URL: https://gitlist.dev/e/9e4733910611292002o289dc4d1u7bde2d457fa97d73%40mail.gmail.com

```
Using this tree git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6

These two tags appear to be pointing to a tree instead of a commit.
v2.6.11
v2.6.11-tree

I'm trying to check out v2.6.11 so that I can figure out the changes a
vendor made to it.

jonsmirl@jonsmirl:/extra/linux$ git checkout -b microcross v2.6.11
Cannot switch branch to a non-commit.

I can checkout the other tags without problem.

What's the secret to checking out 2.6.11?

-- 
Jon Smirl

```

## Junio C Hamano, 2006-11-30 04:22

Subject: Re: v2.6.11 tag in kernel tree
Message-ID: <7v7ixdlg1e.fsf@assigned-by-dhcp.cox.net>
URL: https://gitlist.dev/e/7v7ixdlg1e.fsf%40assigned-by-dhcp.cox.net
In-Reply-To: <9e4733910611292002o289dc4d1u7bde2d457fa97d73@mail.gmail.com>

```
"Jon Smirl" <jonsmirl@gmail.com> writes:

> I'm trying to check out v2.6.11 so that I can figure out the changes a
> vendor made to it.
>
> jonsmirl@jonsmirl:/extra/linux$ git checkout -b microcross v2.6.11
> Cannot switch branch to a non-commit.

Sorry, you cannot check it out directly, and there is no easy
way to start a new branch from a bare tree.

I would create a temporary branch from any commit and reset the
working tree with it.

	git checkout -b temp master
        git read-tree -m -u v2.6.11-tree

One BIG caveat is that this in state, only your index and the
working tree can be trusted.  The history of temp branch does
not have anything to do with v2.6.11 -- a bare tree object does
not have any history behind it (or on top of it, for that
matter).

A slightly more elaborate way would be

        $ git checkout -b v2.6.11-phoney $(echo 'phoney v2.6.11' |
	        git commit-tree v2.6.11-tree^{tree})

to create a parentless commit that has v2.6.11-tree, and make
that your current branch.  But again this commit does not have
any relationship in history with the development line that leads
to v2.6.19 just released.

You could graft it as the parent of v2.6.12-rc2 (the first
commit in git era) after doing the above:

	$ parent=$(git-rev-parse v2.6.11-phoney^0)
        $ commit=$(git-rev-parse v2.6.12-rc2^0)
	$ echo $commit $parent >>.git/info/grafts

and pretend as if v2.6.12-rc2 is a child of v2.6.11-phoney.


```

## Linus Torvalds, 2006-11-30 16:04

Subject: Re: v2.6.11 tag in kernel tree
Message-ID: <Pine.LNX.4.64.0611300758290.3513@woody.osdl.org>
URL: https://gitlist.dev/e/Pine.LNX.4.64.0611300758290.3513%40woody.osdl.org
In-Reply-To: <9e4733910611292002o289dc4d1u7bde2d457fa97d73@mail.gmail.com>

```


On Wed, 29 Nov 2006, Jon Smirl wrote:
>
> Using this tree
> git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
> 
> These two tags appear to be pointing to a tree instead of a commit.
> v2.6.11
> v2.6.11-tree

Yes. We don't have that as a commit. The commit history starts with 
v2.6.12-rc2.

> I'm trying to check out v2.6.11 so that I can figure out the changes a
> vendor made to it.

You can't check it out, since it's not a commit, but since it is a tree, 
you can:

 - use it as a base for "git diff"

	git diff v2.6.11 <any-commit-goes-here>

 - or if you want to use it as a base for development, create a new commit 
   and branch from it:

	git-commit-tree v2.6.11 <<EOF
	This is an initial commit starting at the state of Linux-v2.6.11
	EOF

   and then you can take the resulting SHA1 (that it wrote out to stdout), 
   and do

	git checkout -b my-new-branch <sha1thatyoujustgot>

However, whatever you do, it won't be connected to the rest of the git 
history.

Another possibility may be to get the historical Linux tree (which _does_ 
have a real v2.6.11, and that you _can_ graft together with the current 
tree, and thus get full history), and then use that grafted whole-history 
tree for whatever you want to do. That allows you to do things like 
rebasing the end result (if you started a new branch based on 2.6.11) etc, 
since it's now all connected.


```

## Jon Smirl, 2006-11-30 19:11

Subject: Re: v2.6.11 tag in kernel tree
Message-ID: <9e4733910611301111j3bc3b641ge46c5e80b19c469c@mail.gmail.com>
URL: https://gitlist.dev/e/9e4733910611301111j3bc3b641ge46c5e80b19c469c%40mail.gmail.com
In-Reply-To: <Pine.LNX.4.64.0611300758290.3513@woody.osdl.org>

```
Thanks for the replies, I got it working. I'm trying to decipher the
changes a vendor made to 2.6.11 when they ported it to an ARM device
and peripherals.

It is the usual situation of releasing a GPL tarball without any
documentation as to what they changed.

-- 
Jon Smirl

```
