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

Re: What's in git.git

From
Martin Langhoff <martin.langhoff@gmail.com>
Date
Mar 10, 2006, 11:59 UTC
Message-ID
<46a038f90603100359o402d9e32j268e1b746d0bdfc8@mail.gmail.com>
In-Reply-To
<Pine.LNX.4.63.0603101215100.25810@wbgn013.biozentrum.uni-wuerzburg.de>
On 3/11/06, Johannes Schindelin <Johannes.Schindelin@gmx.de> wrote:
> The history is linearized, and the commits are ordered accordingly, then
> to be passed to git-annotate/-blame.
Exactly.

If a process has already done the costly git-rev-list for other purposes (say, grab logentries of the relevant commits), and wants to also run annotate/blame, it should be able to reuse it cheaply, by passing -S filename. Possibly an IDE (or gitk/qgit) would want to do this.

Now, what I use it for in git-cvsserver is to "flatten" merges. CVS clients don't really understand that we know about parallel history, so every time we have a merge the view that the CVS client gets is of a "merge commit" with a merge summary. And I sweep the merged commits under the carpet.

(there's some arbitrary nondeterministic magic in how I pick what side to track and what side to merge. let's not think about that too much. but I just want git-blame to see a somewhat simplified git-rev-list).

does that help?
cheers,
m
Previous: Johannes SchindelinNext: Junio C Hamano
Message 6 of 9 in “What's in git.git”
  1. Junio C HamanoMar 6, 2006
  2. blame: unbreak "diff -U 0".Junio C Hamano, Mar 6, 2006
  3. Martin LanghoffMar 6, 2006
  4. Fredrik KuivinenMar 10, 2006
  5. Johannes SchindelinMar 10, 2006
  6. Martin LanghoffMar 10, 2006
  7. Junio C HamanoMar 13, 2006
  8. Johannes SchindelinMar 6, 2006
  9. Lukas SandströmMar 6, 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.