Re: [RFC PATCH] Record a single transaction for conflicting push operations
From: Karl Wiberg <hidden>
Date: 2016-06-15 22:47:55
On Fri, Dec 18, 2009 at 12:22 AM, Catalin Marinas [off-list ref] wrote:
StGit commands resulting in a conflicting patch pushing record two transactions in the log (with one of them being inconsistent with HEAD != top). Undoing such operations requires two "stg undo" (possibly with --hard) commands which is unintuitive. This patch changes such operations to only record one log entry and "stg undo" reverts the stack to the state prior to the operation.
Hmm, OK. It was convenient to be able to undo just the last conflicting step, but I guess the increase in UI complexity wasn't worth it. I think your patch doesn't go quite far enough, though. self.__conflicting_push is currently set to a function that will do the extra updates that take us from the first to the second state to save in the log; if we'll be saving at only one point, we might as well run those updates immediately instead of deferring them. In other words, the entire __conflicting_push variable could be removed. -- Karl Wiberg, kha@treskal.com subrabbit.wordpress.com www.treskal.com/kalle