This series fixes one rather benign bug (4/6) and one that caused patches to become empty, which is rather worse (6/6). (The patch contents could still be recovered via the patch log or reflog, but it's still a major inconvenience.) Both bugs were discovered by Erik Sandberg. These patches are also available in the kha/safe branch. --- Karl Hasselström (6): Handle failed pushes differently depending on cause New test: conflicting push in dirty worktree Make sure that we only uncommit commits with exactly one parent Try uncommitting a commit with not exactly one parent Make sure patches with no parents have an empty list of parents Use a special exit code for bugs stgit/commands/uncommit.py | 14 ++++++++++++-- stgit/lib/git.py | 23 +++++++++++++++-------- stgit/lib/transaction.py | 4 +++- stgit/main.py | 11 +++++++---- stgit/utils.py | 1 + t/t1300-uncommit.sh | 5 +++++ t/t3000-dirty-merge.sh | 35 +++++++++++++++++++++++++++++++++++ 7 files changed, 78 insertions(+), 15 deletions(-) create mode 100755 t/t3000-dirty-merge.sh -- Karl Hasselström, kha@xxxxxxxxxxx www.treskal.com/kalle -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html