]>
Commit | Line | Data |
---|---|---|
5b61754d MF |
1 | #!/bin/bash |
2 | ||
bb330599 MF |
3 | set -e |
4 | ||
ad0ac428 MF |
5 | if [[ $# -eq 0 ]] || [[ $1 == "-h" ]] ; then |
6 | echo "Usage: ${0##*/} <dir to import> [more dirs]" | |
7 | exit 1 | |
8 | fi | |
9 | ||
5b61754d MF |
10 | dir=$1 |
11 | if [[ ! -e ${dir} ]] ; then | |
12 | echo "cvs-import: $1: directory does not exist" 1>&2 | |
13 | exit 1 | |
14 | fi | |
15 | dir=$(realpath "${dir}") | |
16 | ||
17 | echo "Importing ${dir} and kids" | |
bb330599 MF |
18 | cd "${dir}/.." |
19 | cvs -Q add "${dir##*/}" | |
5b61754d MF |
20 | |
21 | find_files() { | |
bb330599 MF |
22 | local depth=$1 |
23 | shift | |
24 | find . -mindepth ${depth} -maxdepth ${depth} \ | |
25 | '!' '(' -name 'CVS' -o -wholename '*/CVS/*' ')' "$@" | |
5b61754d MF |
26 | } |
27 | ||
bb330599 | 28 | cd "${dir}" |
5b61754d MF |
29 | i=1 |
30 | while [[ -n $(find_files ${i}) ]] ; do | |
31 | echo "Importing at depth ${i}" | |
bb330599 MF |
32 | find_files ${i} -exec cvs -Q add {} + |
33 | : $(( i += 1 )) | |
5b61754d MF |
34 | done |
35 | ||
36 | echo "Done" |