# HG changeset patch # User Thomas Arendsen Hein # Date 1166206150 -3600 # Node ID 504dee0abeacab1cdffc90924c4302bc870fdcc1 # Parent 6081b4c68baf50fc4ccb2c2a64dfa177dd8dff9c Make sequence number on hg export start at 1 (as documented for %n). Add test. diff --git a/mercurial/patch.py b/mercurial/patch.py --- a/mercurial/patch.py +++ b/mercurial/patch.py @@ -656,7 +656,7 @@ def export(repo, revs, template='hg-%h.p fp.close() for seqno, cset in enumerate(revs): - single(cset, seqno, fp) + single(cset, seqno+1, fp) def diffstat(patchlines): fd, name = tempfile.mkstemp(prefix="hg-patchbomb-", suffix=".txt") diff --git a/tests/test-export b/tests/test-export new file mode 100755 --- /dev/null +++ b/tests/test-export @@ -0,0 +1,15 @@ +#!/bin/sh + +hg init repo +cd repo +touch foo +hg add foo +for i in 0 1 2 3 4 5 6 7 8 9 10 11; do + echo "foo-$i" >> foo + hg ci -m "foo-$i" -d "0 0" +done + +for out in "%nof%N" "%%%H" "%b-%R" "%h" "%r"; do + echo "# foo-$out.patch" + hg export -v -o "foo-$out.patch" 2:tip +done diff --git a/tests/test-export.out b/tests/test-export.out new file mode 100644 --- /dev/null +++ b/tests/test-export.out @@ -0,0 +1,60 @@ +# foo-%nof%N.patch +exporting patches: +foo-01of10.patch +foo-02of10.patch +foo-03of10.patch +foo-04of10.patch +foo-05of10.patch +foo-06of10.patch +foo-07of10.patch +foo-08of10.patch +foo-09of10.patch +foo-10of10.patch +# foo-%%%H.patch +exporting patches: +foo-%617188a1c80f869a7b66c85134da88a6fb145f67.patch +foo-%dd41a5ff707a5225204105611ba49cc5c229d55f.patch +foo-%f95a5410f8664b6e1490a4af654e4b7d41a7b321.patch +foo-%4346bcfde53b4d9042489078bcfa9c3e28201db2.patch +foo-%afda8c3a009cc99449a05ad8aa4655648c4ecd34.patch +foo-%35284ce2b6b99c9d2ac66268fe99e68e1974e1aa.patch +foo-%9688c41894e6931305fa7165a37f6568050b4e9b.patch +foo-%747d3c68f8ec44bb35816bfcd59aeb50b9654c2f.patch +foo-%5f17a83f5fbd9414006a5e563eab4c8a00729efd.patch +foo-%f3acbafac161ec68f1598af38f794f28847ca5d3.patch +# foo-%b-%R.patch +exporting patches: +foo-repo-2.patch +foo-repo-3.patch +foo-repo-4.patch +foo-repo-5.patch +foo-repo-6.patch +foo-repo-7.patch +foo-repo-8.patch +foo-repo-9.patch +foo-repo-10.patch +foo-repo-11.patch +# foo-%h.patch +exporting patches: +foo-617188a1c80f.patch +foo-dd41a5ff707a.patch +foo-f95a5410f866.patch +foo-4346bcfde53b.patch +foo-afda8c3a009c.patch +foo-35284ce2b6b9.patch +foo-9688c41894e6.patch +foo-747d3c68f8ec.patch +foo-5f17a83f5fbd.patch +foo-f3acbafac161.patch +# foo-%r.patch +exporting patches: +foo-00000000000000000002.patch +foo-00000000000000000003.patch +foo-00000000000000000004.patch +foo-00000000000000000005.patch +foo-00000000000000000006.patch +foo-00000000000000000007.patch +foo-00000000000000000008.patch +foo-00000000000000000009.patch +foo-00000000000000000010.patch +foo-00000000000000000011.patch