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 00/10] Updated "stg reset" series
Date: Mon, 21 Apr 2008 00:10:20 +0200	[thread overview]
Message-ID: <20080420215625.5837.82896.stgit@yoghurt> (raw)

The patch stack log / stg reset series has matured over the weekend.
The major highlights are

  1. When a command fails to push a patch due to conflicts, it will
     log two entries -- one for the part of the command that
     succeeded, and one just for the conflicting push. This makes it
     possible to undo just the last part, and not the whole command.

  2. I've tightened the checks so that conflicts will prevent most
     commands from working unless they actively claim to make sense in
     the face of conflicts. Basically, only commands that don't touch
     the topmost patch should be able to run when there are conflicts.

  3. stg reset now understands --hard, which makes it zonk any local
     changes, including conflicts.

(1) and (3) means that

  $ stg reset --hard <branchname>.stgit^~1

can be used instead of stg push --undo when you want to undo a
conflicting push. Now I just have to make that available as

  $ stg undo

so that it actually becomes usable ...

These patches are available at

  git://repo.or.cz/stgit/kha.git experimental

---

Karl Hasselström (10):
      Don't write a log entry if there were no changes
      Add a --hard flag to stg reset
      Log conflicts separately for all commands
      Log conflicts separately
      New command: stg reset
      Add utility function for reordering patches
      Write to a stack log when stack is modified
      Library functions for tree and blob manipulation
      Add property with a list of all patch names
      Prevent most commands from running when there are conflicts


 stgit/commands/branch.py   |   20 ++++-
 stgit/commands/clean.py    |    3 +
 stgit/commands/coalesce.py |    6 +-
 stgit/commands/commit.py   |   13 ++--
 stgit/commands/common.py   |    8 ++
 stgit/commands/delete.py   |   14 +++-
 stgit/commands/diff.py     |    2 -
 stgit/commands/edit.py     |    3 +
 stgit/commands/export.py   |    2 -
 stgit/commands/files.py    |    2 -
 stgit/commands/id.py       |    2 -
 stgit/commands/log.py      |    2 -
 stgit/commands/mail.py     |    2 -
 stgit/commands/patches.py  |    2 -
 stgit/commands/reset.py    |  118 ++++++++++++++++++++++++++++++++
 stgit/commands/series.py   |    2 -
 stgit/commands/show.py     |    2 -
 stgit/commands/status.py   |    3 +
 stgit/commands/top.py      |    2 -
 stgit/commands/uncommit.py |    5 +
 stgit/lib/git.py           |  143 +++++++++++++++++++++++++++++++++------
 stgit/lib/log.py           |  161 ++++++++++++++++++++++++++++++++++++++++++++
 stgit/lib/stack.py         |    8 ++
 stgit/lib/transaction.py   |   92 ++++++++++++++++++++-----
 stgit/main.py              |    4 +
 t/t3100-reset.sh           |  151 +++++++++++++++++++++++++++++++++++++++++
 t/t3101-reset-hard.sh      |   56 +++++++++++++++
 27 files changed, 754 insertions(+), 74 deletions(-)
 create mode 100644 stgit/commands/reset.py
 create mode 100644 stgit/lib/log.py
 create mode 100755 t/t3100-reset.sh
 create mode 100755 t/t3101-reset-hard.sh

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

             reply	other threads:[~2008-04-20 22:11 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-04-20 22:10 Karl Hasselström [this message]
2008-04-20 22:10 ` [StGit PATCH 01/10] Prevent most commands from running when there are conflicts Karl Hasselström
2008-04-20 22:10 ` [StGit PATCH 02/10] Add property with a list of all patch names Karl Hasselström
2008-04-20 22:10 ` [StGit PATCH 03/10] Library functions for tree and blob manipulation Karl Hasselström
2008-04-20 22:10 ` [StGit PATCH 04/10] Write to a stack log when stack is modified Karl Hasselström
2008-04-20 22:10 ` [StGit PATCH 05/10] Add utility function for reordering patches Karl Hasselström
2008-04-20 22:10 ` [StGit PATCH 06/10] New command: stg reset Karl Hasselström
2008-04-20 22:11 ` [StGit PATCH 07/10] Log conflicts separately Karl Hasselström
2008-04-20 22:11 ` [StGit PATCH 08/10] Log conflicts separately for all commands Karl Hasselström
2008-04-20 22:11 ` [StGit PATCH 09/10] Add a --hard flag to stg reset Karl Hasselström
2008-04-20 22:11 ` [StGit PATCH 10/10] Don't write a log entry if there were no changes 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=20080420215625.5837.82896.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).