Mercurial > hg
view tests/test-pushvars.t @ 39848:4ece3cdfd907
localrepo: support shared repo creation
Previously, hg.share() had its own logic for creating a new
repository on the filesystem.
With the recent introduction of the createopts dict for passing
options to influence repository creation, it is now possible
to consolidate the repo creation code for both the normal and
shared use cases.
This commit teaches the repo creation code in localrepo to
recognize when we're creating a shared repo and to act
appropriately.
Meaningful behavior should be identical. However, there are a
few subtle changes:
* The .hg/requires file is written out in sorted order (rather
than having share-related requirements appended at end).
* The .hg directory is created with notindexed=True when a shared
repo is being created.
Differential Revision: https://phab.mercurial-scm.org/D4707
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Wed, 19 Sep 2018 17:05:59 -0700 |
parents | 2405ca783672 |
children | d7304434390f |
line wrap: on
line source
Setup $ PYTHONPATH=$TESTDIR/..:$PYTHONPATH $ export PYTHONPATH $ cat > $TESTTMP/pretxnchangegroup.sh << EOF > #!/bin/sh > env | egrep "^HG_USERVAR_(DEBUG|BYPASS_REVIEW)" | sort > exit 0 > EOF $ cat >> $HGRCPATH << EOF > [hooks] > pretxnchangegroup = sh $TESTTMP/pretxnchangegroup.sh > EOF $ hg init repo $ hg clone -q repo child $ cd child Test pushing vars to repo with pushvars.server not set $ echo b > a $ hg commit -Aqm a $ hg push --pushvars "DEBUG=1" --pushvars "BYPASS_REVIEW=true" pushing to $TESTTMP/repo searching for changes adding changesets adding manifests adding file changes added 1 changesets with 1 changes to 1 files Setting pushvars.sever = true and then pushing. $ echo [push] >> $HGRCPATH $ echo "pushvars.server = true" >> $HGRCPATH $ echo b >> a $ hg commit -Aqm a $ hg push --pushvars "DEBUG=1" --pushvars "BYPASS_REVIEW=true" pushing to $TESTTMP/repo searching for changes adding changesets adding manifests adding file changes added 1 changesets with 1 changes to 1 files HG_USERVAR_BYPASS_REVIEW=true HG_USERVAR_DEBUG=1 Test pushing var with empty right-hand side $ echo b >> a $ hg commit -Aqm a $ hg push --pushvars "DEBUG=" pushing to $TESTTMP/repo searching for changes adding changesets adding manifests adding file changes added 1 changesets with 1 changes to 1 files HG_USERVAR_DEBUG= Test pushing bad vars $ echo b >> a $ hg commit -Aqm b $ hg push --pushvars "DEBUG" pushing to $TESTTMP/repo searching for changes abort: unable to parse variable 'DEBUG', should follow 'KEY=VALUE' or 'KEY=' format [255]