I've rebased my experimental branch against the stuff Catalin pushed
out recently. The remaining diff is mostly the DAG series and David's
push conflict improvements. I haven't had time to test drive it
thoroughly, but it passes the test suite.
The following changes since commit 7e97cc0590f29482af022340df84a43b98c657ce:
Yann Dirson (1):
Include contrib scripts in the release tarball.
are available in the git repository at:
git://repo.or.cz/stgit/kha.git master
David Kågedal (5):
Split git.merge into two functions
Leave working dir and index alone after failed (conflicting) push
Added a test case to check what happens when push finds a conflict
Simplify merge_recursive
Use the output from merge-recursive to list conflicts
Karl Hasselström (12):
Compute patch appliedness from commit DAG
Test the new DAG appliedness machinery
Fix bash completion after the DAG appliedness patch
Speed up the appliedness test
Speed up the discovery of uninteresting commits
Speed up appliedness check during patch creation
Don't traverse the whole DAG when looking for uninteresting commits
Find uninteresting commits faster for special cases
Optimize uninterestingness checks for rebase
Don't touch ref files manually
Merge branch 'refs'
Merge branch 'conflict'
contrib/stgit-completion.bash | 15 +-
stgit/commands/branch.py | 5 +-
stgit/commands/commit.py | 8 +-
stgit/commands/common.py | 4 +-
stgit/commands/float.py | 2 +-
stgit/commands/imprt.py | 2 +-
stgit/commands/pick.py | 2 +-
stgit/commands/refresh.py | 2 +-
stgit/commands/sync.py | 2 +-
stgit/git.py | 140 ++++++----
stgit/stack.py | 642 ++++++++++++++++++++++++++++++++---------
t/t0001-subdir-branches.sh | 7 +-
t/t1000-branch-create.sh | 30 +--
t/t1001-branch-rename.sh | 2 +-
t/t1203-push-conflict.sh | 64 ++++
t/t3000-git-interop.sh | 60 ++++
t/t4000-upgrade.sh | 6 +
17 files changed, 741 insertions(+), 252 deletions(-)
create mode 100755 t/t1203-push-conflict.sh
create mode 100755 t/t3000-git-interop.sh
--
Karl Hasselström, kha@treskal.com
www.treskal.com/kalle
Updated again. It has all the patches I just mailed out, as well as
the DAG series.
The following changes since commit 5f1629be6d0d10aa2acb253c89c6f6c38fdf3cf2:
Catalin Marinas (1):
Allow 'import' to apply empty patches
are available in the git repository at:
git://repo.or.cz/stgit/kha.git master
David Kågedal (5):
Split git.merge into two functions
Leave working dir and index alone after failed (conflicting) push
Added a test case to check what happens when push finds a conflict
Simplify merge_recursive
Use the output from merge-recursive to list conflicts
Karl Hasselström (19):
Don't use test_expect_failure when more than one thing could fail
Don't write None to the conf file
Replace "git repo-config" with "git config" in help texts
Compile regexp just once
Refactor output handling to break circular dependency
Refactor subprocess creation
Assert that the argument to Run is a sequence of strings
Add optional logging of subprocess execution
Better error message if merge fails
Compute patch appliedness from commit DAG
Test the new DAG appliedness machinery
Fix bash completion after the DAG appliedness patch
Speed up the appliedness test
Speed up the discovery of uninteresting commits
Speed up appliedness check during patch creation
Don't traverse the whole DAG when looking for uninteresting commits
Find uninteresting commits faster for special cases
Optimize uninterestingness checks for rebase
Merge branch 'conflict-run'
contrib/stgit-completion.bash | 15 +-
examples/gitconfig | 2 +-
stgit/basedir.py | 13 +-
stgit/commands/applied.py | 1 +
stgit/commands/assimilate.py | 1 +
stgit/commands/branch.py | 1 +
stgit/commands/clean.py | 1 +
stgit/commands/commit.py | 9 +-
stgit/commands/common.py | 1 +
stgit/commands/delete.py | 1 +
stgit/commands/diff.py | 1 +
stgit/commands/export.py | 10 +-
stgit/commands/files.py | 1 +
stgit/commands/float.py | 2 +-
stgit/commands/fold.py | 1 +
stgit/commands/hide.py | 1 +
stgit/commands/id.py | 1 +
stgit/commands/imprt.py | 3 +-
stgit/commands/log.py | 1 +
stgit/commands/mail.py | 1 +
stgit/commands/patches.py | 1 +
stgit/commands/pick.py | 3 +-
stgit/commands/pull.py | 1 +
stgit/commands/push.py | 1 +
stgit/commands/refresh.py | 3 +-
stgit/commands/rename.py | 1 +
stgit/commands/series.py | 1 +
stgit/commands/sync.py | 3 +-
stgit/commands/top.py | 1 +
stgit/commands/unapplied.py | 1 +
stgit/commands/uncommit.py | 1 +
stgit/commands/unhide.py | 1 +
stgit/config.py | 56 +---
stgit/git.py | 374 +++++++++++---------------
stgit/gitmergeonefile.py | 21 +-
stgit/main.py | 2 +-
stgit/out.py | 100 +++++++
stgit/run.py | 141 ++++++++++
stgit/stack.py | 583 +++++++++++++++++++++++++++++++++--------
stgit/utils.py | 81 +------
t/t1203-push-conflict.sh | 64 +++++
t/t2101-pull-policy-pull.sh | 4 +-
t/t3000-git-interop.sh | 60 +++++
t/t4000-upgrade.sh | 6 +
44 files changed, 1082 insertions(+), 495 deletions(-)
create mode 100644 stgit/out.py
create mode 100644 stgit/run.py
create mode 100755 t/t1203-push-conflict.sh
create mode 100755 t/t3000-git-interop.sh
--
Karl Hasselström, kha@treskal.com
www.treskal.com/kalle