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

Re: [PATCH 0/10] re-based and expanded tree-walker cleanup patches

From
Junio C Hamano <junkio@cox.net>
Date
May 30, 2006, 03:04 UTC
Message-ID
<7vmzd05i25.fsf@assigned-by-dhcp.cox.net>
In-Reply-To
<Pine.LNX.4.64.0605291739430.5623@g5.osdl.org>
Linus Torvalds <torvalds@osdl.org> writes:
Show 10 quoted lines
> On Mon, 29 May 2006, Junio C Hamano wrote:
>> 
>> Sorry for having you have done this -- last night I've merged
>> the series without rebasing and have the result in "next".  I'll
>> compare to see if you have spotted my mismerges there tonight.
>
> It was interesting. I cleaned up the series and switched the order of some 
> commits in my tree by doing first a "git rebase" and then cherry-picking 
> them into another branch, and using "git commit --amend" to fix up some of 
> the things I had missed.

I just did this (readers on the list needs to disect "next" if they are interested to reproduce this, since I do not publish individual topic heads, but each of the merge commits on "next" tells which topics are merged, so that should be trivial):

	$ git checkout -b lt/tree-2 master
        $ apply your 10-patch series
	$ git show-branch lt/tree lt/tree-2 jc/lt-tree-n-cache-tree next

Your yesterday's series is on lt/tree, and jc/lt-tree-n-cache-tree is my "evil merge" branch to adjust it to the cache-tree that I had in "next". It's tip has cache-tree and lt/tree merged, so it should match the early parts of today's 10-patch series. I used show-branch to find that lt/tree-2~5 is the one to match yesterday's series:

	$ git diff --name-only lt/tree~4..lt/tree |
	  xargs git diff lt/tree-2~5 jc/lt-tree-n-cache-tree --
This shows only cosmetic differences, which is good.
> Pretty powerful, although at one point I was wondering about having a "git 
> rebase" that could switch commits around or drop unwanted ones (ie let the 
> user edit the cherry-picking list before the actual rebase).

I think true power users would just do the last two lines of git-rebase.sh by hand in two steps. By stashing away the format-patch output, and using git-am interactively, you can easily drop unwanted ones, and then re-run git-am on the same format-patch output to apply the ones you dropped on the first run practically amounts to reordering the patches ;-).

Previous: Linus TorvaldsNext: Linus Torvalds
Message 15 of 24 in “re-based and expanded tree-walker cleanup patches”
  1. 0/10 re-based and expanded tree-walker cleanup patchesLinus Torvalds, May 29, 2006
  2. 1/10 Make "struct tree" contain the pointer to the tree bufferLinus Torvalds, May 29, 2006
  3. 2/10 Make "tree_entry" have a SHA1 instead of a union of object pointersLinus Torvalds, May 29, 2006
  4. 3/10 Switch "read_tree_recursive()" over to tree-walk functionalityLinus Torvalds, May 29, 2006
  5. 4/10 builtin-read-tree.c: avoid tree_entry_list in prime_cache_tree_rec()Linus Torvalds, May 29, 2006
  6. 5/10 Remove "tree->entries" tree-entry list from tree parserLinus Torvalds, May 29, 2006
  7. 6/10 fsck-objects: avoid unnecessary tree_entry_list usageLinus Torvalds, May 29, 2006
  8. Linus TorvaldsMay 29, 2006
  9. 7/10 Remove unused "zeropad" entry from tree_list_entryLinus Torvalds, May 29, 2006
  10. 8/10 Convert "mark_tree_uninteresting()" to raw tree walkerLinus Torvalds, May 29, 2006
  11. 9/10 Convert fetch.c: process_tree() to raw tree walkerLinus Torvalds, May 29, 2006
  12. 10/10 Remove last vestiges of generic tree_entry_listLinus Torvalds, May 29, 2006
  13. Junio C HamanoMay 29, 2006
  14. Linus TorvaldsMay 30, 2006
  15. Junio C HamanoMay 30, 2006
  16. Linus TorvaldsMay 30, 2006
  17. Junio C HamanoMay 30, 2006
  18. Junio C HamanoMay 31, 2006
  19. Shawn PearceJun 1, 2006
  20. A series file for git?Eric W. Biederman, Jun 23, 2006
  21. Junio C HamanoJun 23, 2006
  22. Junio C HamanoJun 24, 2006
  23. Eric W. BiedermanJun 24, 2006
  24. Shawn PearceJun 26, 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.