X-Git-Url: https://git.madduck.net/code/myrepos.git/blobdiff_plain/c934687bf61031c926d525f0149d4d4fe324269d..413865c35343c6cf080c5f66a08a67eaef923ca3:/mrconfig?ds=inline diff --git a/mrconfig b/mrconfig index d93bac2..500985f 100644 --- a/mrconfig +++ b/mrconfig @@ -3,12 +3,26 @@ [DEFAULT] # Teach mr how to run svn cleanup. cleanup = if [ -d "$MR_REPO"/.svn ]; then svn cleanup ; fi -# And how to run git gc +# And how to run git gc and push. gc = if [ -d "$MR_REPO"/.git ]; then git gc; fi +push = if [ -d "$MR_REPO"/.git ]; then git push; fi +# And how to list tags for git and svn. +tag = + if [ -d "$MR_REPO"/.svn ]; then + git tag + elsif [ -d "$MR_REPO"/.git ]; then + url=$(LANG=C svn info . | grep -i ^URL: | cut -d ' ' -f 2) + svn ls "$(echo '$url' | sed -e 's/trunk/tags/')" + else + error "unknown repo type" + fi +# This hack is here because git-pull stupidly outputs tag info to stderr. +# Shut it up but let real errors through, for use in cron. +quietupdate = mr -s -n update 3>&1 1>/dev/null 2>&3 | egrep -v '(storing tag|tag: )' || true # Tests used in the skips below. # - wantsrc checks whether I probably want a full source checkout (quite # large) -# - wantmedia checks whethere I probably want various large media files +# - wantmedia checks whether I probably want various large media files # here. # - private are hosts I trust private data to # - mylaptop only succeeds if it's on my main development laptop, which @@ -77,22 +91,6 @@ update = echo "skipping cvs update (too slow)" status = echo "skipping cvs status (too ugly)" skip = ! mylaptop || ! wantsrc -[src/packages/uqm] -checkout = git clone ssh://git.kitenet.net/srv/git/kitenet.net/uqm -skip = ! wantsrc - -[src/packages/uqm-content] -checkout = git clone ssh://git.kitenet.net/srv/git/kitenet.net/uqm-content -skip = ! wantsrc - -[src/packages/uqm-voice] -checkout = git clone ssh://git.kitenet.net/srv/git/kitenet.net/uqm-voice -skip = ! wantsrc - -[src/packages/uqm-music] -checkout = git clone ssh://git.kitenet.net/srv/git/kitenet.net/uqm-music -skip = ! wantsrc - # My home directory, which I keep in svn. [] checkout = svn co svn+ssh://svn.kitenet.net/srv/svn/joey/trunk/home-$(hostname) joey @@ -103,10 +101,9 @@ update = svn update && svnfix checkout = git clone ssh://git.kitenet.net/srv/git/kitenet.net/joey/private/mail skip = ! private -[doc] -checkout = git clone ssh://git.kitenet.net/srv/git/kitenet.net/joey/private/doc -skip = ! private - -[lib/text] -checkout = git clone ssh://git.kitenet.net/srv/git/kitenet.net/joey/private/text -skip = ! wantmedia +# Example of how to remember to delete a repo, when one mrconfig file is +# used on multiple systems. If you're feeling brave, use rm -rf $MR_REPO +# instead. This approach can also be used for renames. +[foo] +update = error "$MR_REPO is no longer used and should be deleted" +skip = ! test -d "$MR_REPO"