From: Karl Hasselström Date: Thu, 12 Jun 2008 05:34:04 GMT Subject: [StGit PATCH 00/14] Undo series Message-ID: <20080612052913.23549.69687.stgit@yoghurt> Now with API documentation added all over the place! Especially in 2/14 and 3/14. The only two things missing before I'll ask for this to be included are 1. Conversion of stg refresh to the new infrastructure, so that it can write two separate steps to the stack log (which will allow undo et.al. to handle it nicely). 2. Log writing optimization: Right now, we always write all the patches to the log, without trying to reuse the entries for the ones that haven't changed since last time. --- Karl Hasselström (14): Make "stg log" show stack log instead of patch log Log and undo external modifications New command: stg redo New command: stg undo Move stack reset function to a shared location 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 Fix typo stgit/commands/branch.py | 19 +- stgit/commands/common.py | 9 + stgit/commands/diff.py | 2 stgit/commands/files.py | 2 stgit/commands/id.py | 2 stgit/commands/log.py | 169 +++++------------ stgit/commands/mail.py | 2 stgit/commands/patches.py | 2 stgit/commands/redo.py | 52 +++++ stgit/commands/reset.py | 56 +++++ stgit/commands/show.py | 2 stgit/commands/status.py | 3 stgit/commands/undo.py | 49 +++++ stgit/lib/git.py | 197 +++++++++++++++++-- stgit/lib/log.py | 429 ++++++++++++++++++++++++++++++++++++++++++ stgit/lib/stack.py | 16 ++ stgit/lib/transaction.py | 121 +++++++++--- stgit/main.py | 8 + t/t1400-patch-history.sh | 103 ---------- t/t3100-reset.sh | 151 +++++++++++++++ t/t3101-reset-hard.sh | 56 +++++ t/t3102-undo.sh | 86 ++++++++ t/t3103-undo-hard.sh | 56 +++++ t/t3104-redo.sh | 122 ++++++++++++ t/t3105-undo-external-mod.sh | 68 +++++++ 25 files changed, 1491 insertions(+), 291 deletions(-) create mode 100644 stgit/commands/redo.py create mode 100644 stgit/commands/reset.py create mode 100644 stgit/commands/undo.py create mode 100644 stgit/lib/log.py delete mode 100755 t/t1400-patch-history.sh create mode 100755 t/t3100-reset.sh create mode 100755 t/t3101-reset-hard.sh create mode 100755 t/t3102-undo.sh create mode 100755 t/t3103-undo-hard.sh create mode 100755 t/t3104-redo.sh create mode 100755 t/t3105-undo-external-mod.sh -- Karl Hasselström, kha@treskal.com www.treskal.com/kalle