sapling/tests/test-pushrebase-protection.t
Jun Wu 9fea0c3f0c doc: replace "commit" where it is used as a noun with "changeset"
Summary:
"changeset" is a more official term and let's use it. Note that this patch
only changes documentation / i18n messages visible to the users and header
comment blocks to developers. Other places like comments in the code are
untouched.

With the "dialect" extension enabled, users will still see the more friendly
term - "commit".

Test Plan:
`arc unit`. Note the remotefilelog failure is probably unrelated - seems
related to ongoing / upcoming manifest refactoring upstream.

Reviewers: #sourcecontrol, rmcelroy

Reviewed By: rmcelroy

Subscribers: mjpieters

Differential Revision: https://phabricator.intern.facebook.com/D3900394

Signature: t1:3900394:1474470348:6a1b5691e2599cc47df18b227d56d1f9d3c7c906
2016-09-21 15:45:25 +01:00

79 lines
1.9 KiB
Perl

Setup
$ PYTHONPATH=$TESTDIR/..:$PYTHONPATH
$ export PYTHONPATH
$ cat >> $HGRCPATH <<EOF
> [ui]
> ssh = python "$RUNTESTDIR/dummyssh"
> username = nobody <no.reply@fb.com>
> [extensions]
> strip =
> EOF
Setup pushrebase required repo
$ hg init server
$ cd server
$ cat >> .hg/hgrc <<EOF
> [extensions]
> bundle2hooks =
> pushrebase =
> [pushrebase]
> blocknonpushrebase = True
> EOF
$ echo a > a && hg commit -Aqm a
$ cd ..
$ hg clone -q server client
$ cd client
$ echo b >> a && hg commit -Aqm b
$ hg book master
Non-pushrebase pushes should be rejected
$ hg push
pushing to $TESTTMP/server (glob)
searching for changes
error: prechangegroup.blocknonpushrebase hook failed: this repository requires that you push using 'hg push --to'
abort: this repository requires that you push using 'hg push --to'
[255]
$ hg push -f
pushing to $TESTTMP/server (glob)
searching for changes
error: prechangegroup.blocknonpushrebase hook failed: this repository requires that you push using 'hg push --to'
abort: this repository requires that you push using 'hg push --to'
[255]
$ hg push -B master
pushing to $TESTTMP/server (glob)
searching for changes
error: prechangegroup.blocknonpushrebase hook failed: this repository requires that you push using 'hg push --to'
abort: this repository requires that you push using 'hg push --to'
[255]
Pushrebase pushes should be allowed
$ hg push --config 'extensions.bundle2hooks=' --config 'extensions.pushrebase=' --to master -B master
pushing to $TESTTMP/server (glob)
searching for changes
pushing 1 changset:
1846eede8b68 b
exporting bookmark master
Bookmark pushes should not be affected by the block
$ hg book -r ".^" master -f
$ hg push -B master
pushing to $TESTTMP/server (glob)
searching for changes
no changes found
updating bookmark master
[1]
$ hg -R ../server log -T '{rev} {bookmarks}' -G
o 1
|
@ 0 master