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

Re: RFH: refactor read-tree

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Jul 9, 2006, 14:55 UTC
Message-ID
<Pine.LNX.4.63.0607091650030.29667@wbgn013.biozentrum.uni-wuerzburg.de>
In-Reply-To
<Pine.LNX.4.64.0607082011060.5623@g5.osdl.org>
Hi,
On Sat, 8 Jul 2006, Linus Torvalds wrote:
Show 12 quoted lines
> On Sun, 9 Jul 2006, Johannes Schindelin wrote:
> > 
> > I also played a little with git-merge-tree, because it seems so much 
> > simpler and easier to refactor. But there is a problem: Either I call it 
> > the wrong way, or it does not yet work correctly: I tried
> > 
> > 	git-merge-tree $(git-merge-base branch1 branch2) branch1 branch2
> > 
> > with what is in 'next'. But it only showed the _new_ files, not the 
> > modified ones.
> 
> What git-merge-tree does is to show the _difference_ to "branch1".

I see my problem: branch1 is not the "upstream" branch, but my own. Tsk. Too easy.

Now, if only merge-tree knew about renames. *sigh*.
> And yes, I agree 100% that "git-read-tree" has become an unholy mess. I 
> looked at it, and I think it's unfixable. I considered re-writing it from 
> scratch, at least for some specific cases, but I couldn't bring myself to 
> do it.

Well, I think that at least the unpack_tree() thing should be relatively easy to extract. And the rest _should_ be relatively easy to clean up, provided we introduce a read_tree_options struct, which gets passed around a la "this" in Java/C++.

Ciao, Dscho

Previous: Alex Riesen
Message 7 of 7 in “RFH: refactor read-tree”
  1. Johannes SchindelinJul 8, 2006
  2. Linus TorvaldsJul 9, 2006
  3. Alex RiesenJul 9, 2006
  4. Johannes SchindelinJul 9, 2006
  5. Linus TorvaldsJul 9, 2006
  6. Alex RiesenJul 9, 2006
  7. Johannes SchindelinJul 9, 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.