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

Why can't git-rebase back up?

From
Llinux@horizon.com <linux@horizon.com>
Date
Feb 17, 2006, 13:59 UTC
Message-ID
<20060217135938.7412.qmail@science.horizon.com>

Newbie question... In what I assume is a usual technique, I maintain a "build" branch off of the linux-2.6 history which is what I check out to build a kernel. I usually keep it at an official tagged releas, such as v2.6.16-rc2.

[[ This is because core git won't allow the checked-out HEAD to point to anything but a branch, and checking out something without having HEAD point to it is fragile and delicate. Cogito lets you do this with cg-seek. ]]

Now, if I want to migrate to a newer base version, I can always use git-reset --hard v2.6.16-rc3, but that's a bit dangerous. Preferable is to use git-rebase v2.6.16-rc3, which will preserve any local edits.

(I could also do it as a merge, but that seems like unnecessary history clutter. It's not like local edits are common, anyway.)

But suppose discover a nasty bug in -rc3 and want to move my build branch back to -rc2. "git-rebase v2.6.16-rc2" does nothing. After a bit of thought, I realize why, but sometime I do want to back up.

What's the best way to do that? Should git-rebase take an optional third argument which is the branch head we are moving away from? E.g. what I want to do would be

	git-rebase v2.6.16-rc2 build v2.6.16-rc3
Or is there some other tool already suited to the job?

(Yes, I'm aware the operations cannot be exact inverses, because if I applied a local patch that was also included in -rc3, git-rebase will delete the redundant copy from the build branch, and the backing up will have no way to know to put it back. If I wanted to do that, I would use a merge.)

On a completely unrelated note, how do I find out what git thinks of a particular file, such as linux-2.6/.config? It isn't listed in the output of git-status or git-ls-files, but git-ls-files -i produces an error. Very confusingly, git-ls-files -i --exclude-per-directory=.gitignore -X .git/info/exclude .config also produces no output, even though .* is listed in .gitignore.

Next: Andreas Ericsson
Message 1 of 10 in “Why can't git-rebase back up?”
  1. linux@horizon.comFeb 17, 2006
  2. Andreas EricssonFeb 17, 2006
  3. linux@horizon.comFeb 17, 2006
  4. Andreas EricssonFeb 17, 2006
  5. Junio C HamanoFeb 18, 2006
  6. Junio C HamanoFeb 18, 2006
  7. linux@horizon.comFeb 18, 2006
  8. Junio C HamanoFeb 18, 2006
  9. linux@horizon.comFeb 18, 2006
  10. Johannes SchindelinFeb 18, 2006

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.