aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/set-svn-properties.sh
diff options
context:
space:
mode:
Diffstat (limited to 'set-svn-properties.sh')
-rwxr-xr-xset-svn-properties.sh53
1 files changed, 53 insertions, 0 deletions
diff --git a/set-svn-properties.sh b/set-svn-properties.sh
new file mode 100755
index 0000000..cfd3c93
--- /dev/null
+++ b/set-svn-properties.sh
@@ -0,0 +1,53 @@
1#!/bin/sh
2
3set_eol_style()
4{
5 IFS=$'\n'
6 for file in `find . -iname \*\.$1`; do
7 prop=`svn propget svn:eol-style $file`
8 if [ -z "${prop}" -o "${prop}" != "native" ]; then
9 svn propset svn:eol-style native $file
10 fi
11 done
12 IFS=$' \t\n'
13}
14
15remove_executable()
16{
17 IFS=$'\n'
18 for file in `find . -iname \*\.$1`; do
19 prop=`svn propget svn:executable $file`
20 if [ -n "${prop}" ]; then
21 svn propdel svn:executable $file
22 fi
23 done
24 IFS=$' \t\n'
25}
26
27set_executable()
28{
29 IFS=$'\n'
30 for file in `find . -iname \*\.$1`; do
31 prop=`svn propget svn:executable $file`
32 if [ -z "${prop}" ]; then
33 svn propset svn:executable "*" $file
34 fi
35 done
36 IFS=$' \t\n'
37}
38
39EOL_EXTENSIONS="cs ini example txt sql xml sh"
40NO_EXE_EXTENSIONS="cs ini example txt sql xml"
41EXE_EXTENSIONS="exe sh"
42
43for ext in ${EOL_EXTENSIONS}; do
44 set_eol_style $ext
45done
46
47for ext in ${NO_EXE_EXTENSIONS}; do
48 remove_executable $ext
49done
50
51for ext in ${EXE_EXTENSIONS}; do
52 set_executable $ext
53done