3 if [ -z "$2" -o -n "$4" ]; then
4 echo "Usage: $0 upstream origin [local]" >&2
11 test -z "$local_repo" && local_repo="`basename \"$origin\" .git`"
13 if [ -d "$local_repo"/.git ]; then
18 git remote add upstream "$upstream"
19 git remote set-url origin "$origin" || git remote add origin "$origin"
21 git clone -o upstream "$upstream" "$local_repo" &&
23 chmod a-x .git/config &&
24 git remote add origin "$origin"
27 "`dirname \"$0\"`"/set-commit-date-recursive &&
28 pwd >> "`dirname \"$0\"`"/locate-all.list &&
29 branch="`git rev-parse --abbrev-ref HEAD`" &&
31 git pull upstream $branch &&
32 git pull origin $branch &&
33 git push -u origin $branch &&
35 git config branch.$branch.remote upstream &&
36 git config branch.$branch.remotepush origin &&
37 git config branch.$branch.merge refs/heads/$branch &&
38 git config push.default current &&
40 exec git gc --aggressive