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

Re: Stacked GIT 0.1 (a.k.a. quilt for git)

From
CMCatalin Marinas <catalin.marinas@gmail.com>
Date
Jun 24, 2005, 11:29 UTC
Message-ID
<tnxhdfo56yd.fsf@arm.com>
In-Reply-To
<20050624034743.6c3bdae4.pj@sgi.com>
Paul Jackson <pj@sgi.com> wrote:
Show 12 quoted lines
>> it should at least
>> check whether the commit message was modified.
>
> I suspect not.
>
> Beware that quilt has tended toward the philosophy of doing just
> what you said, with no more, perhaps less than, the minimum critical
> consistency checking.  If you tried to shoot you foot off with it,
> it shot your foot off, quickly.
>
> If I try to make a change without a meaninguful log entry, what
> business of stgit is that?

The way to modify a patch with stgit is via 'stg commit'. The problem is that you can end up with a commit log you didn't want simply because the editor crashed or $EDITOR is invalid and there is no way to modify the log history.

With stgit you don't have files only specific to a patch (the 'quilt add' command equivalent is missing). When you modify a file and commit the changes, it will be included in the topmost patch. IMO, this simplifies the command set and avoids having two different add commands (or a single add command with different behaviours). Now, some people might not run a 'stg status' before a commit but they find out from the commit msg that an unrelated file was modified. You could simply exit without saving the commit msg and the changes won't be checked in (and the tree is left in a consistent state - the one before the commit).

Anyway, if you don't care about the commit history for individual patches, I can simply remove all this commit/editor/msg check and just use a standard text, maybe a description of the patch so that people pulling from your git tree would know what it is about.

> And it certainly should not leave the
> tree in some unspecified, inconsistent state without prior warning
> on account of such.

'commit' failing doesn't leave the tree in an unspecified state (at least not the yesterday's snapshot). There are other commands that do this, unfortunately, but I'm still working on this.

> Don't add inessential sanity checks on user input.  It won't sell
> well to the "quilt replacement" market.

I'm not keen on keeping these sanity checks but see my reasons above for the commit message. Anyway, I'm open to suggestions. The main advantage of stgit over quilt is that it uses diff3 instead of patch for pushing patches. For this to work properly, the top and bottom of a patch have to be valid commit or tree objects containing the whole tree even if most of the files are not modified by this patch.

-- 
Catalin
Previous: Paul JacksonNext: Paul Jackson
Message 11 of 15 in “Stacked GIT 0.1 (a.k.a. quilt for git)”
  1. Catalin MarinasJun 16, 2005
  2. Daniel BarkalowJun 17, 2005
  3. Jon SeymourJun 17, 2005
  4. Catalin MarinasJun 18, 2005
  5. Catalin MarinasJun 18, 2005
  6. Daniel BarkalowJun 19, 2005
  7. Catalin MarinasJun 19, 2005
  8. Paul JacksonJun 24, 2005
  9. Catalin MarinasJun 24, 2005
  10. Paul JacksonJun 24, 2005
  11. Catalin MarinasJun 24, 2005
  12. Paul JacksonJun 24, 2005
  13. Catalin MarinasJun 24, 2005
  14. Catalin MarinasJun 28, 2005
  15. Paul JacksonJun 29, 2005

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.