Copy all svn:* properties from one file to another
1 2 #!/bin/sh 3 4 ORIG=$1 ; shift ; 5 [ -e "$ORIG" ] || exit ; 6 7 for PROP in `svn pl "$ORIG" | sed -n '2,$p'` ; do 8 VALUE=`svn pg $PROP "$ORIG"` ; 9 for FILE ; do 10 [ -e "$FILE" ] && svn ps $PROP "$VALUE" "$FILE" ; 11 done 12 done 13 14 # That's it, Folks!
If you put the above code in a shell script called...
1 2 svnprops.sh
... then you can run it as follows if you want to copy all svn:* properties FROM original.file TO blegga:
1 2 pvdb@localhost ~ $ ./svnprops.sh original.file blegga 3 property 'svn:mime-type' set on 'blegga' 4 property 'svn:eol-style' set on 'blegga' 5 pvdb@localhost ~ $ _
... or as follows for multiple target files:
1 2 pvdb@localhost ~ $ ./svnprops.sh another.original.file blegga foo bar 3 property 'svn:mime-type' set on 'blegga' 4 property 'svn:mime-type' set on 'foo' 5 property 'svn:mime-type' set on 'bar' 6 pvdb@localhost ~ $ _