From: "Karl Hasselström" <kha@treskal.com>
To: Catalin Marinas <catalin.marinas@gmail.com>
Cc: git@vger.kernel.org, "David Kågedal" <davidk@lysator.liu.se>
Subject: [StGit PATCH 00/10] Infrastructure rewrite series
Date: Sun, 25 Nov 2007 21:50:47 +0100 [thread overview]
Message-ID: <20071125203717.7823.70046.stgit@yoghurt> (raw)
I've expanded on the infrastructure rewrite series. As of now, clean,
applied, unapplied, goto, uncommit, and the new command coalesce have
been converted.
The main new development is support for index and worktree operations,
so that it can do conflicting merges. This made it possible to convert
"stg goto", but the main practical attraction is the vastly improved
"stg coalesce", which can now take an arbitrary list of patches and
reorder them so that they can be joined to one big patch. It will do
so entirely automatically if the merges resolve automatically, and if
they don't it will pretend to have done a series of pops, pushes, and
deletes, and leave the user to manually resolve the first conflicting
push.
The implementation of coalesce -- particularly the ability to fail
gracefully on conflicts at any intermediate step -- is helped a lot by
some new cool transaction stuff.
Available from
git://repo.or.cz/stgit/kha.git experimental
---
Karl Hasselström (10):
Convert "stg uncommit" to the new infrastructure
Let "stg goto" use the new infrastructure
Let "stg clean" use the new transaction primitives
Teach the new infrastructure about the index and worktree
Let "stg applied" and "stg unapplied" use the new infrastructure
Add "stg coalesce"
Let "stg clean" use the new infrastructure
Upgrade older stacks to newest version
Write metadata files used by the old infrastructure
New StGit core infrastructure: repository operations
contrib/stgit-completion.bash | 2
setup.py | 2
stgit/commands/applied.py | 27 +--
stgit/commands/clean.py | 49 ++---
stgit/commands/coalesce.py | 109 ++++++++++++
stgit/commands/common.py | 10 +
stgit/commands/goto.py | 52 ++----
stgit/commands/unapplied.py | 23 +-
stgit/commands/uncommit.py | 79 ++++----
stgit/lib/__init__.py | 18 ++
stgit/lib/git.py | 383 +++++++++++++++++++++++++++++++++++++++++
stgit/lib/stack.py | 168 ++++++++++++++++++
stgit/lib/stackupgrade.py | 96 ++++++++++
stgit/lib/transaction.py | 194 +++++++++++++++++++++
stgit/main.py | 2
stgit/stack.py | 100 +----------
stgit/utils.py | 24 +++
t/t2600-coalesce.sh | 31 +++
18 files changed, 1136 insertions(+), 233 deletions(-)
create mode 100644 stgit/commands/coalesce.py
create mode 100644 stgit/lib/__init__.py
create mode 100644 stgit/lib/git.py
create mode 100644 stgit/lib/stack.py
create mode 100644 stgit/lib/stackupgrade.py
create mode 100644 stgit/lib/transaction.py
create mode 100755 t/t2600-coalesce.sh
--
Karl Hasselström, kha@treskal.com
www.treskal.com/kalle
next reply other threads:[~2007-11-25 20:51 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-25 20:50 Karl Hasselström [this message]
2007-11-25 20:51 ` [StGit PATCH 01/10] New StGit core infrastructure: repository operations Karl Hasselström
2007-11-25 20:51 ` [StGit PATCH 02/10] Write metadata files used by the old infrastructure Karl Hasselström
2007-11-25 20:51 ` [StGit PATCH 03/10] Upgrade older stacks to newest version Karl Hasselström
2007-11-25 20:51 ` [StGit PATCH 04/10] Let "stg clean" use the new infrastructure Karl Hasselström
2007-11-25 20:51 ` [StGit PATCH 05/10] Add "stg coalesce" Karl Hasselström
2007-11-25 20:51 ` [StGit PATCH 06/10] Let "stg applied" and "stg unapplied" use the new infrastructure Karl Hasselström
2007-11-25 20:51 ` [StGit PATCH 07/10] Teach the new infrastructure about the index and worktree Karl Hasselström
2007-11-26 8:31 ` Karl Hasselström
2007-11-26 8:56 ` David Kågedal
2007-11-26 10:44 ` Karl Hasselström
2007-11-25 20:51 ` [StGit PATCH 08/10] Let "stg clean" use the new transaction primitives Karl Hasselström
2007-11-25 20:51 ` [StGit PATCH 09/10] Let "stg goto" use the new infrastructure Karl Hasselström
2007-11-25 20:51 ` [StGit PATCH 10/10] Convert "stg uncommit" to " 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=20071125203717.7823.70046.stgit@yoghurt \
--to=kha@treskal.com \
--cc=catalin.marinas@gmail.com \
--cc=davidk@lysator.liu.se \
--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).