Mercurial > hg
view tests/test-impexp-branch @ 11999:62e2bbf523f2
revlog: generate full revisions when parent node is missing
The full revision is sent if the first parent, against which diff is calculated, is
missing at remote. This happens in the case of shallow clones.
author | Vishakh H <vsh426@gmail.com> |
---|---|
date | Fri, 13 Aug 2010 19:41:51 +0530 |
parents | 32ea809e5bd1 |
children |
line wrap: on
line source
#!/bin/sh cat >findbranch.py <<EOF import re, sys head_re = re.compile('^#(?:(?:\\s+([A-Za-z][A-Za-z0-9_]*)(?:\\s.*)?)|(?:\\s*))$') for line in sys.stdin: hmatch = head_re.match(line) if not hmatch: sys.exit(1) if hmatch.group(1) == 'Branch': sys.exit(0) sys.exit(1) EOF hg init a cd a echo "Rev 1" >rev hg add rev hg commit -m "No branch." hg branch abranch echo "Rev 2" >rev hg commit -m "With branch." if hg export 0 | python ../findbranch.py; then echo "Export of default branch revision has Branch header" 1>&2 exit 1 fi if hg export 1 | python ../findbranch.py; then : # Do nothing else echo "Export of branch revision is missing Branch header" 1>&2 exit 1 fi # Make sure import still works with branch information in patches. cd .. hg init b cd b hg -R ../a export 0 | hg import - hg -R ../a export 1 | hg import - cd .. rm -rf b hg init b cd b hg -R ../a export 0 | hg import --exact - hg -R ../a export 1 | hg import --exact -