diff options
Diffstat (limited to 'trunk/lib')
-rw-r--r-- | trunk/lib/common.sh | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/trunk/lib/common.sh b/trunk/lib/common.sh index 4b54cc6..faeaeb4 100644 --- a/trunk/lib/common.sh +++ b/trunk/lib/common.sh @@ -572,13 +572,36 @@ function sync_repo { function svn_add { - # TODO: merge with svn_add function from mkbuild if [ -d "`dirname $1`/.svn" ] && ! svn_check $1; then su_svn add $1 fi } +function svn_copy { + + # usage: svn_copy <orig> <dest> + + # svn add file + [ $# -ne 1 ] && handle_error $ERROR_PAR_NUMBER + + orig="`dirname $1`" + file="`basename $1`" + dest="$2" + + if [ -d "$dest" ]; then + dest="$dest/$file" + fi + + # copy file + cp $orig/$file $dest + if [ -d "`dirname $dest`/.svn" ]; then + chown_svn $dest && chgrp_svn $dest + svn_add $dest + fi + +} + function svn_mkdir { # svn make directory |