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

Re: How to create a new branch based on a tag?

From
Junio C Hamano <junkio@cox.net>
Date
Oct 21, 2005, 05:08 UTC
Message-ID
<7vzmp3319v.fsf@assigned-by-dhcp.cox.net>
In-Reply-To
<4359161B.5000808@ust.hk>
Ben Lau <benlau@ust.hk> writes:
Show 5 quoted lines
>>The way you know is as good as it gets.  v2.6.11-tree case is
>>really an unfortunate special case.
>>
> What is wrong with the v2.6.11-tree? I just thought it is a duplicate tag
> of v2.6.11.

They are not *wrong* per-se. They are tags to tree objects without any associated commit history -- that makes them inappropriate to be used as branch heads.

Linus or somebody authoritative could do:
    $ commit=$(echo v2.6.11 | \
      git-commit-tree c39ae07f393806ccf406ef966e9a15afc43cc36a)
    $ git-tag -s -m 'v2.6.11 canonical "fake" commit' v2.6.11fake $commit
and tell everybody interested to have:
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 xxxxxxxxxx

(where xxxxx... is the value of $commit above) in their info/grafts file. Then we *could* pretend that v2.6.12-rc2's parent is v2.6.11. You could branch off from v2.6.11fake commit and base your development, and later you could merge that into later development history (say, v2.6.14-rc5) if you wanted to.

If Linus does something like the above, the graft probably be better done between the current v2.6.12-rc2 based commit history and the corresponding commit in the history resurrected from BKCVS (torvalds/old-2.6-bkcvs.git). Then you could even base your development on top of v2.4.0 ;-).

Funnily, v2.6.12-rc2 commit in the current history and BKCVS v2.6.12-rc2 commit in the resurrected history have different tree IDs.

I am however not quite sure how useful the above would be, though. EVen between 2.6.11 and 2.6.12-rc2 much have happened, so unless the changes you are making apply to the part that did not change between those two, merge conflict resolution might be quite a chore.

Previous: Ben LauNext: Ben Lau
Message 6 of 8 in “How to create a new branch based on a tag?”
  1. Ben LauOct 21, 2005
  2. Martin LanghoffOct 21, 2005
  3. Ben LauOct 21, 2005
  4. Junio C HamanoOct 21, 2005
  5. Ben LauOct 21, 2005
  6. Junio C HamanoOct 21, 2005
  7. Ben LauOct 21, 2005
  8. Junio C HamanoOct 21, 2005

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.