Mercurial > hgsubversion
annotate tests/fixtures/invalid_utf8.sh @ 1340:db9d85618d3d
wrapper: delay marker creation in push
Before this patch we were creating obsolescence markers when pulling the
changesets from subversion. The counterpart stripping logic (when obsolescence
is not available) was done after pushing everything.
This patch moves the marker creation to the end of the push, to:
1) Make the code more readable (the marker creation and the stripping should
be in the same place)
2) Fix a behavior issue with inhibit(evolve) (see below)
With inhibit + hgsubversion enabled. When pushing to subversion we were
creating markers as expected but inhibiting the marker on the commit that was
the parent of the working copy making it therefore visible.
By delaying the marker creation to after the update we avoid this issue.
author | Laurent Charignon <lcharignon@fb.com> |
---|---|
date | Wed, 08 Jul 2015 13:30:16 -0700 |
parents | 312f36a425f0 |
children |
rev | line source |
---|---|
910
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
1 #!/bin/bash |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
2 #-*- coding: utf-8 -*- |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
3 # |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
4 # Generate invalid_utf8.svndump |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
5 # |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
6 |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
7 #check svnadmin version, must be >= 1.7 |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
8 SVNVERSION=$(svnadmin --version | head -n 1 | cut -d \ -f 3) |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
9 if [[ "$SVNVERSION" < '1.7' ]] ; then |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
10 echo "You MUST have svn 1.7 or above to use this script" |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
11 exit 1 |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
12 fi |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
13 |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
14 set -x |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
15 |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
16 TMPDIR=$(mktemp -d) |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
17 WD=$(pwd) |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
18 |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
19 cd $TMPDIR |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
20 |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
21 svnadmin create failrepo |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
22 svn co file://$PWD/failrepo fail |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
23 ( |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
24 cd fail |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
25 touch A |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
26 svn add A |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
27 svn ci -m blabargrod |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
28 ) |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
29 svnadmin --pre-1.6-compatible create invalid_utf8 |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
30 svnadmin dump failrepo | \ |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
31 sed "s/blabargrod/$(echo blåbærgrød | iconv -f utf-8 -t latin1)/g" | \ |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
32 svnadmin load --bypass-prop-validation invalid_utf8 |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
33 |
312f36a425f0
Ignore invalid utf8 in commit messages
David Schleimer <dschleimer@fb.com>
parents:
diff
changeset
|
34 tar cz -C invalid_utf8 -f "$WD"/invalid_utf8.tar.gz . |