]> git.pld-linux.org Git - packages/ctags.git/blob - branch.sh
3c4c21d49eafce8052122bcfb2d8c8835e5f4f90
[packages/ctags.git] / branch.sh
1 #!/bin/sh
2 set -e
3 svn=svn://svn.code.sf.net/p/ctags/code
4 tag=ctags-5.8
5 out=branch.diff
6
7 d=$-
8 filter() {
9         set -$d
10         # Excluding files which change version or were not in dist tarball
11         filterdiff \
12                 -x 'NEWS' \
13                 -x 'maintainer.mak' \
14                 -x 'Test/*' \
15                 -x 'website/*' \
16                 | \
17         # remove revno's for smaller diffs
18         sed -e 's,^\([-+]\{3\} .*\)\t(revision [0-9]\+)$,\1,'
19 }
20
21 old=$svn/tags/$tag
22 new=$svn/trunk
23 echo >&2 "Running diff: $old -> $new"
24 LC_ALL=C svn diff --old=$old --new=$new > $out.tmp
25 revno=$(sed -ne 's,^[-+]\{3\} .*\t(revision \([0-9]\+\))$,\1,p' $out.tmp | sort -urn | head -n1)
26 echo >&2 "Revision $revno"
27 [ "$revno" -gt 0 ] || exit 1
28
29 sed -i -e "1i# Revision $revno" $out.tmp
30 filter < $out.tmp > $out.tmp2 && mv -f $out.{tmp2,tmp}
31
32 if cmp -s branch.diff{,.tmp}; then
33         echo >&2 "No new diffs..."
34         rm -f branch.diff.tmp
35         exit 0
36 fi
37 mv -f branch.diff{.tmp,}
This page took 0.055839 seconds and 2 git commands to generate.