]> git.wh0rd.org - home.git/commitdiff
git-update: improve git-hg handling and general output
authorMike Frysinger <vapier@gentoo.org>
Mon, 26 Oct 2015 21:16:18 +0000 (17:16 -0400)
committerMike Frysinger <vapier@gentoo.org>
Mon, 26 Oct 2015 21:16:18 +0000 (17:16 -0400)
.bin/git-update

index 324dc7b2c163aec863acd47bb93c33655530dbb0..09e77aff31bb5f95fa51a485a20a331b5621321b 100755 (executable)
@@ -1,16 +1,27 @@
 #!/bin/bash -e
+# Helper script for various git mirrors of other VCS types.
+# I'm lazy and can't be bothered to remember the exact invocation.
+
 #if [[ $(git branch | awk '($1 == "*") {print $2}') != master ]] ; then
 #      echo "Switch to master first"
 #      exit 1
 #fi
 
+g() {
+       set -- git "$@"
+       echo "--- $*"
+       "$@"
+}
+
 if git config svn-remote.svn.url >/dev/null ; then
        # git-config uses svn.authorsfile relative to repo root
        # i.e. good to use .git/authors
        set -- git svn fetch --all "$@"
        expected=""
 elif git config remote.hg.url >/dev/null ; then
-       git-hg pull
+       set -- git-hg pull
+       $(git config --get --bool remote.hg.force)  && set -- "$@" --force
+       $(git config --get --bool remote.hg.rebase) && set -- "$@" --rebase
 elif git config cvs.cvsroot >/dev/null ; then
        # authors file is at .git/cvs-authors
        set -- git cvsimport -a -d $(git config cvs.cvsroot) $(git config cvs.module) "$@"
@@ -30,6 +41,6 @@ output=$(
 )
 [[ ${output} == "${expected}" ]] && exit 0
 
-git fsck
-git count-objects
-git gc --prune
+g fsck
+g count-objects
+g gc --prune