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

Re: Stacked GIT 0.3 (now more Quilt-like)

From
POPeter Osterlund <petero2@telia.com>
Date
Jul 3, 2005, 12:38 UTC
Message-ID
<m3oe9k6p40.fsf@telia.com>
In-Reply-To
<1120385280.6845.12.camel@localhost.localdomain>
Catalin Marinas <catalin.marinas@gmail.com> writes:
Show 15 quoted lines
> Hi Peter,
> 
> Thanks for trying this tool.
> 
> On Sun, 2005-07-03 at 10:38 +0200, Peter Osterlund wrote:
> > This is good stuff and the 3-way merge really simplifies things.
> > However, if there is a merge conflict, you will basically be stuck
> > with a 2-way merge when resolving manually. It's usually much easier
> > if you can see all three version, so I think it's better to use -A
> > instead of -E in the diff3 command.
> 
> I know that using -A gives a more detailed output in case of a conflict.
> The problem is that you will get a conflict even if the changes are
> identical, making it impossible to detect when a patch was merged
> upstream.
OK, I see. How about using wiggle instead?
        http://cgi.cse.unsw.edu.au/~neilb/source/wiggle/

That's what patch-utils uses if you run "pushpatch -m". wiggle is also a lot smarter than diff3, so there will be fewer cases that result in a conflict. Maybe a parameter to "stg push" could enable wiggle mode.

Another nice thing from patch-utils is that if applying the patch would have failed, nothing will be done by "pushpatch". You then have the option to rerun it with -m (merge) or -f (force, create .rej files), or decide that you don't want to push the patch at all. The last part is quite useful if you try to reorder a patch series, find out that you would get a thousand conflicts, and want to reconsider.

Is there a way in StGIT to undo a push that results in a large mess of conflicts?

> Speaking of detecting upstream merges, the latest StGIT snapshot shows a
> '0' in front of a patch if it is empty, when 'stg series' is invoked.
> When pushing, if all the changes are the same, it notifies you that the
> patch is empty so that it can be safely removed.

That's a useful feature. With patch-utils, I used to drop patches manually, but that could lose information if the patch applied upstream is not exactly the same as the one I had locally.

-- 
Peter Osterlund - petero2@telia.com
http://web.telia.com/~u89404340
Previous: Catalin MarinasNext: Catalin Marinas
Message 4 of 16 in “Stacked GIT 0.3 (now more Quilt-like)”
  1. Catalin MarinasJun 28, 2005
  2. Peter OsterlundJul 3, 2005
  3. Catalin MarinasJul 3, 2005
  4. Peter OsterlundJul 3, 2005
  5. Catalin MarinasJul 3, 2005
  6. Martin LanghoffJul 4, 2005
  7. Peter OsterlundJul 4, 2005
  8. randy_dunlapJul 4, 2005
  9. Catalin MarinasJul 4, 2005
  10. Catalin MarinasJul 6, 2005
  11. Peter OsterlundJul 7, 2005
  12. Catalin MarinasJul 7, 2005
  13. Peter OsterlundJul 8, 2005
  14. Junio C HamanoJul 8, 2005
  15. Peter OsterlundJul 8, 2005
  16. Catalin MarinasJul 8, 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.