[StGIT PATCH 5/7] Changed sync not to use -b which has other semantics.
Using --branch here is confusing from a UI point of view, and unnecessarily complicates implementation, making it more delicate to get rid of the crt-series global. We now use --ref-branch (-B) instead.
Signed-off-by: Yann Dirson <ydirson@altern.org>
---
stgit/commands/sync.py | 13 ++++++-------
t/t2000-sync.sh | 8 ++++----
2 files changed, 10 insertions(+), 11 deletions(-)
Show changes to 2 files +10 −11
stgit/commands/sync.py, t/t2000-sync.sh
diff --git a/stgit/commands/sync.py b/stgit/commands/sync.py
index e769602..2ec7427 100644
--- a/stgit/commands/sync.py
+++ b/stgit/commands/sync.py
@@ -38,7 +38,7 @@ The sync operation can be reverted for individual patches with --undo."""
options = [make_option('-a', '--all',
help = 'synchronise all the patches',
action = 'store_true'),
- make_option('-b', '--branch',
+ make_option('-B', '--ref-branch',
help = 'syncronise patches with BRANCH'),
make_option('-s', '--series',
help = 'syncronise patches with SERIES'),
@@ -69,9 +69,9 @@ def func(parser, options, args):
global crt_series
if options.undo:
- if options.branch or options.series:
+ if options.ref_branch or options.series:
raise CmdException, \
- '--undo cannot be specified with --branch or --series'
+ '--undo cannot be specified with --ref-branch or --series'
__check_all()
out.start('Undoing the sync of "%s"' % crt_series.get_current())
@@ -80,12 +80,11 @@ def func(parser, options, args):
out.done()
return
- if options.branch:
+ if options.ref_branch:
# the main function already made crt_series to be the remote
# branch
- remote_series = crt_series
- stgit.commands.common.crt_series = crt_series = stack.Series()
- if options.branch == crt_series.get_name():
+ remote_series = stack.Series(options.ref_branch)
+ if options.ref_branch == crt_series.get_name():
raise CmdException, 'Cannot synchronise with the current branch'
remote_patches = remote_series.get_applied()
diff --git a/t/t2000-sync.sh b/t/t2000-sync.sh
index 69ab1ac..f831df7 100755
--- a/t/t2000-sync.sh
+++ b/t/t2000-sync.sh
@@ -48,7 +48,7 @@ test_expect_success \
test_expect_success \
'Synchronise second patch with the master branch' \
'
- stg sync -b master p2 &&
+ stg sync -B master p2 &&
[ "$(echo $(stg applied))" = "p1 p2 p3" ] &&
[ "$(echo $(stg unapplied))" = "" ] &&
test $(cat foo2.txt) = "foo2"
@@ -57,7 +57,7 @@ test_expect_success \
test_expect_success \
'Synchronise the first two patches with the master branch' \
'
- stg sync -b master -a &&
+ stg sync -B master -a &&
[ "$(echo $(stg applied))" = "p1 p2 p3" ] &&
[ "$(echo $(stg unapplied))" = "" ] &&
test $(cat foo1.txt) = "foo1" &&
@@ -100,7 +100,7 @@ test_expect_success \
test_expect_success \
'Synchronise second patch with the master branch' \
'
- stg sync -b master p2 &&
+ stg sync -B master p2 &&
[ "$(echo $(stg applied))" = "p1 p2 p3" ] &&
[ "$(echo $(stg unapplied))" = "" ] &&
test $(cat bar2.txt) = "bar2"
@@ -109,7 +109,7 @@ test_expect_success \
test_expect_failure \
'Synchronise the first two patches with the master branch (to fail)' \
'
- stg sync -b master -a
+ stg sync -B master -a
'
test_expect_success \