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

Re: Literate programming with git

From
Ben North <ben@redfrontdoor.org>
Date
Sep 3, 2016, 21:30 UTC
Message-ID
<CAHG0eJUuZc8WFE9pkBgBQ0kikcQj8-bgt0fyeek5QDxDQnsABw@mail.gmail.com>
In-Reply-To
<CAGZ79kbOMa5e5pUi+pA1JUSehFYMyCot+ZRWbORgwq2xCqvnZg@mail.gmail.com>
Hi Stefan,
Thanks for the remarks.
Show 12 quoted lines
>>     https://github.com/bennorth/git-dendrify
>
> [...]  You get an easy top-level overview what
> the community is interested in via e.g.:
>
>     git log --first-parent --oneline
>
> That would be equivalent to showing only
>     * Add printing facility
>
> If you run that command on "* Add printing facility"^2
> you would see the headlines of the section.

That's a nice observation on how to use the existing git tools to view a structured history with different levels of detail.

> However in gits reality we do not have these nice sections
> building on top of each other, as many people are interested in
> different things and build where they see fit.

Yes, reality isn't always clean! But each individual contributor can structure their own branch in a hierarchical way if they think it would be helpful, before publishing it for review.

> How does the linearify/dendrify work with already non-linear history?

If you attempt to 'linearize' a section of history which isn't of the required hierarchical form, the tool exits without doing anything. (Because this is only at the experimenting stage, there may well be situations where it fails to detect an unexpected structure, but see also next paragraph.) Similarly, if you attempt to 'dendrify' a section of history which isn't purely linear, it refuses.

In any case, the tool only ever creates a new branch so your original history is unaltered.

Thanks,
Ben.
Previous: Stefan Beller
Message 3 of 3 in “Literate programming with git”
  1. Ben NorthAug 31, 2016
  2. Stefan BellerAug 31, 2016
  3. Ben NorthSep 3, 2016

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.