[Xfce4-commits] <xfce-git-migration:master> add script to convert svn:ignore props to gitignore files

Brian J. Tarricone brian at tarricone.org
Thu Aug 20 03:44:01 CEST 2009


Updating branch refs/heads/master
         to 28d73d50967e5ded6b532c64113e5769673522af (commit)
       from b82bf3d14628cb99b2ae8f8a38650b2ef48445b5 (commit)

commit 28d73d50967e5ded6b532c64113e5769673522af
Author: Brian J. Tarricone <brian at tarricone.org>
Date:   Thu Aug 20 01:42:26 2009 +0000

    add script to convert svn:ignore props to gitignore files

 svnignore2git.sh |   28 ++++++++++++++++++++++++++++
 1 files changed, 28 insertions(+), 0 deletions(-)

diff --git a/svnignore2git.sh b/svnignore2git.sh
new file mode 100755
index 0000000..2c90c6f
--- /dev/null
+++ b/svnignore2git.sh
@@ -0,0 +1,28 @@
+#!/bin/bash
+
+REPO_ROOT="file:///var/svn"
+REPOS="goodies xfce www xfce-archive xfce3"
+OUTDIR='./exported-gitignores'
+
+FILTER='/(Makefile|Makefile.in|\*\.(o|lo|la|a|so)|\.libs|\.deps|config\.(cache|log|guess|h(\.in)?|status(\.lineno)?|sub)|autom4te\.cache|stamp-h1|libtool|[[:alnum:]]+\.spec|aclocal\.m4|compile|configure(\.(ac|in))?|depcomp|install-sh|ltmain\.sh|missing|mkinstalldirs|intltool-\*|INSTALL|core)$'
+
+mkdir -p $OUTDIR || exit 1
+
+for r in $REPOS; do
+  mkdir -p $OUTDIR/$r || continue
+
+  modules=$(svn ls $REPO_ROOT/$r | grep '/$' | grep -v '^modules/$' | sed -e 's:/$::')
+  for m in $modules; do
+    outfile=$OUTDIR/$r/$m-gitignore
+    rm -f $outfile.tmp
+
+    dirs=$(svn ls -R $REPO_ROOT/$r/$m/trunk 2>/dev/null | grep '/$' | sort | uniq)
+    dirs="./ $dirs"
+    for d in $dirs; do
+      svn propget 'svn:ignore' $REPO_ROOT/$r/$m/trunk/$d 2>/dev/null | sed -e "/^\$/d; s,^,$d," >>$outfile.tmp
+    done
+
+    sed -e 's:^./::' $outfile.tmp | grep -E -v "$FILTER" >$outfile
+    rm -f $outfile.tmp
+  done
+done



More information about the Xfce4-commits mailing list