X-Git-Url: https://git.xonotic.org/?p=xonotic%2Fxonotic.git;a=blobdiff_plain;f=all;h=e9098393b09b2e0df91e7d3d49449a246018ecfe;hp=5812b82f577b8b1c67d4d9297ec5e65227ac9755;hb=93a19091517d1519880d80dfc6f2cff960e6ee3a;hpb=928c8a26c2f104059008293dbd612e6a365eaf35 diff --git a/all b/all index 5812b82f..e9098393 100755 --- a/all +++ b/all @@ -299,6 +299,13 @@ fix_upstream_rebase_mergefail() fix_git_config() { + verbose git config remote.origin.url "$1" + if [ -n "$2" ]; then + verbose git config remote.origin.pushurl "$2" + else + verbose git config --unset remote.origin.pushurl || true + fi + verbose git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" verbose git config core.autocrlf input if [ -z "`git config push.default`" ]; then verbose git config push.default current # or is tracking better? @@ -328,11 +335,26 @@ case "$cmd" in verbose fix_upstream_rebase_mergefail && verbose fix_upstream_rebase_mergeok done ;; + fix_config) + for d in $repos; do + url=`repourl "$d"` + pushurl=`repopushurl "$d"` + branch=`repobranch "$d"` + if [ -d "$d0/$d" ]; then + verbose cd "$d0/$d" + fix_git_config "$url" "$pushurl" + cd "$d0" + fi + done + ;; update|pull) allow_pull=true if [ x"$1" = x"-N" ]; then allow_pull=false fi + if $allow_pull; then + "$SELF" fix_config + fi for d in $repos; do url=`repourl "$d"` pushurl=`repopushurl "$d"` @@ -340,14 +362,6 @@ case "$cmd" in if [ -d "$d0/$d" ]; then if $allow_pull; then enter "$d0/$d" verbose - fix_git_config - verbose git config remote.origin.url "$url" - if [ -n "$pushurl" ]; then - verbose git config remote.origin.pushurl "$pushurl" - else - verbose git config --unset remote.origin.pushurl - fi - verbose git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*" r=`git symbolic-ref HEAD` r=${r#refs/heads/} if git config branch.$r.remote >/dev/null 2>&1; then @@ -370,12 +384,7 @@ case "$cmd" in else verbose git clone "$url" "$d0/$d" enter "$d0/$d" verbose - if [ -n "$pushurl" ]; then - verbose git config remote.origin.pushurl "$pushurl" - else - verbose git config --unset remote.origin.pushurl - fi - fix_git_config + fix_git_config "$url" "$pushurl" if [ "$branch" != "master" ]; then verbose git checkout --track -b "$branch" origin/"$branch" fi @@ -954,6 +963,8 @@ case "$cmd" in echo "$report" | ssh nexuiz@rm.endoftheinternet.org cat '>>' public_html/xonotic-merge-notes.txt ;; clean) + "$SELF" fix_config + "$SELF" update -N force=false gotoupstream=false fetchupstream=false