##// END OF EJS Templates
push: add --all-bookmarks option...
Dan Villiom Podlaski Christiansen -
r46407:49535e56 default
parent child Browse files
Show More
@@ -5391,6 +5391,7 b' def pull(ui, repo, source=b"default", **'
5391 _(b'REV'),
5391 _(b'REV'),
5392 ),
5392 ),
5393 (b'B', b'bookmark', [], _(b"bookmark to push"), _(b'BOOKMARK')),
5393 (b'B', b'bookmark', [], _(b"bookmark to push"), _(b'BOOKMARK')),
5394 (b'', b'all-bookmarks', None, _(b"push all bookmarks (EXPERIMENTAL)")),
5394 (
5395 (
5395 b'b',
5396 b'b',
5396 b'branch',
5397 b'branch',
@@ -5447,7 +5448,8 b' def push(ui, repo, dest=None, **opts):'
5447 If -B/--bookmark is used, the specified bookmarked revision, its
5448 If -B/--bookmark is used, the specified bookmarked revision, its
5448 ancestors, and the bookmark will be pushed to the remote
5449 ancestors, and the bookmark will be pushed to the remote
5449 repository. Specifying ``.`` is equivalent to specifying the active
5450 repository. Specifying ``.`` is equivalent to specifying the active
5450 bookmark's name.
5451 bookmark's name. Use the --all-bookmarks option for pushing all
5452 current bookmarks.
5451
5453
5452 Please see :hg:`help urls` for important details about ``ssh://``
5454 Please see :hg:`help urls` for important details about ``ssh://``
5453 URLs. If DESTINATION is omitted, a default path will be used.
5455 URLs. If DESTINATION is omitted, a default path will be used.
@@ -5475,6 +5477,13 b' def push(ui, repo, dest=None, **opts):'
5475 """
5477 """
5476
5478
5477 opts = pycompat.byteskwargs(opts)
5479 opts = pycompat.byteskwargs(opts)
5480
5481 if opts.get(b'all_bookmarks'):
5482 cmdutil.check_incompatible_arguments(
5483 opts, b'all_bookmarks', [b'bookmark', b'rev'],
5484 )
5485 opts[b'bookmark'] = list(repo._bookmarks)
5486
5478 if opts.get(b'bookmark'):
5487 if opts.get(b'bookmark'):
5479 ui.setconfig(b'bookmarks', b'pushing', opts[b'bookmark'], b'push')
5488 ui.setconfig(b'bookmarks', b'pushing', opts[b'bookmark'], b'push')
5480 for b in opts[b'bookmark']:
5489 for b in opts[b'bookmark']:
@@ -1364,3 +1364,33 b' Pushing the bookmark "foo" now fails as '
1364 no changes found (ignored 1 secret changesets)
1364 no changes found (ignored 1 secret changesets)
1365 abort: cannot push bookmark foo as it points to a secret changeset
1365 abort: cannot push bookmark foo as it points to a secret changeset
1366 [255]
1366 [255]
1367
1368 Test pushing all bookmarks
1369
1370 $ hg init $TESTTMP/ab1
1371 $ cd $TESTTMP/ab1
1372 $ "$PYTHON" $TESTDIR/seq.py 1 5 | while read i; do
1373 > echo $i > test && hg ci -Am test
1374 > done
1375 adding test
1376 $ hg clone -U . ../ab2
1377 $ hg book -r 1 A; hg book -r 2 B; hg book -r 3 C
1378 $ hg push ../ab2
1379 pushing to ../ab2
1380 searching for changes
1381 no changes found
1382 [1]
1383 $ hg push --all-bookmarks -r 1 ../ab2
1384 abort: cannot specify both --all-bookmarks and --rev
1385 [255]
1386 $ hg push --all-bookmarks -B A ../ab2
1387 abort: cannot specify both --all-bookmarks and --bookmark
1388 [255]
1389 $ hg push --all-bookmarks ../ab2
1390 pushing to ../ab2
1391 searching for changes
1392 no changes found
1393 exporting bookmark A
1394 exporting bookmark B
1395 exporting bookmark C
1396 [1]
@@ -352,7 +352,7 b' Show all commands + options'
352 paths: template
352 paths: template
353 phase: public, draft, secret, force, rev
353 phase: public, draft, secret, force, rev
354 pull: update, force, confirm, rev, bookmark, branch, ssh, remotecmd, insecure
354 pull: update, force, confirm, rev, bookmark, branch, ssh, remotecmd, insecure
355 push: force, rev, bookmark, branch, new-branch, pushvars, publish, ssh, remotecmd, insecure
355 push: force, rev, bookmark, all-bookmarks, branch, new-branch, pushvars, publish, ssh, remotecmd, insecure
356 recover: verify
356 recover: verify
357 remove: after, force, subrepos, include, exclude, dry-run
357 remove: after, force, subrepos, include, exclude, dry-run
358 rename: after, at-rev, force, include, exclude, dry-run
358 rename: after, at-rev, force, include, exclude, dry-run
General Comments 0
You need to be logged in to leave comments. Login now