git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Karl Hasselström" <kha@treskal.com>
To: Catalin Marinas <catalin.marinas@gmail.com>
Cc: git@vger.kernel.org
Subject: [StGit PATCH 0/2] "stg assimilate" on steroids
Date: Wed, 26 Sep 2007 04:15:02 +0200	[thread overview]
Message-ID: <20070926020911.1202.2580.stgit@yoghurt> (raw)

This makes "stg assimilate" a whole lot more useful, and replaces my
DAG appliedness series. (If you have been using that, manually change
the stack format version back to 2, and create empty "applied" and
"unapplied" files, and run the new assimilate. That should fix it. I
hope. I'll be testing it myself tomorrow.)

Here's what assimilate says about itself:

  "assimilate" will repair three kinds of inconsistencies in your
  StGit stack, all of them caused by using plain git commands on the
  branch:

    1. If you have made regular git commits on top of your stack of
       StGit patches, "assimilate" converts them to StGit patches,
       preserving their contents.

    2. Merge commits cannot become patches; if you have committed a
       merge on top of your stack, "assimilate" will simply mark all
       patches below the merge unapplied, since they are no longer
       reachable. If this is not what you want, use "git reset" to get
       rid of the merge and run "assimilate" again.

    3. The applied patches are supposed to be precisely those that are
       reachable from the branch head. If you have used e.g. "git
       reset" to move the head, some applied patches may no longer be
       reachable, and some unapplied patches may have become
       reachable. "assimilate" will correct the appliedness of such
       patches.

  Note that these are "inconsistencies", not "errors"; furthermore,
  "assimilate" will repair them reliably. As long as you are satisfied
  with the way "assimilate" handles them, you have no reason to avoid
  causing them in the first place if that is convenient for you.

---

Karl Hasselström (2):
      Test the new powers of "stg assimilate"
      Teach "stg assimilate" to repair patch reachability


 stgit/commands/assimilate.py  |  190 +++++++++++++++++++++++++++++++----------
 stgit/commands/common.py      |    6 +
 stgit/stack.py                |    6 +
 t/t1301-assimilate.sh         |   12 +--
 t/t1302-assimilate-interop.sh |   59 +++++++++++++
 5 files changed, 216 insertions(+), 57 deletions(-)
 create mode 100755 t/t1302-assimilate-interop.sh

-- 
Karl Hasselström, kha@treskal.com
      www.treskal.com/kalle

             reply	other threads:[~2007-09-26  2:15 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-09-26  2:15 Karl Hasselström [this message]
2007-09-26  2:15 ` [StGit PATCH 1/2] Teach "stg assimilate" to repair patch reachability Karl Hasselström
2007-09-26  2:15 ` [StGit PATCH 2/2] Test the new powers of "stg assimilate" Karl Hasselström
2007-09-27  5:48 ` [StGit PATCH 0/2] "stg assimilate" on steroids Karl Hasselström
2007-09-27  5:50   ` [StGit PATCH] Let "stg assimilate" handle missing patches Karl Hasselström

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20070926020911.1202.2580.stgit@yoghurt \
    --to=kha@treskal.com \
    --cc=catalin.marinas@gmail.com \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).