# To make mr use this file, add a line like this inside the [DEFAULT]
# section of your ~/.mrconfig
#include = cat /usr/share/mr/git-svn
-
-git_test = test -d "$MR_REPO"/.git && ! test -d "$MR_REPO"/.git/svn/git-svn
-git_svn_test = test -d "$MR_REPO"/.git/svn/git-svn
-git_svn_update = git-svn fetch
-git_svn_status = git status "$@" || true
-git_svn_commit = git-svn dcommit
+#
+# Note that by default this makes mr update do a git svn fetch.
+# Some might prefer it to do a git svn rebase, if you do, you can
+# configure that as follows in your ~/.mrconfig:
+#git_svn_update = git svn rebase
+git_svn_update = git svn fetch
+git_svn_status = git status -s "$@" || true; git --no-pager log --branches --not --remotes --simplify-by-decoration --decorate --oneline || true
+git_svn_commit = git svn dcommit
+git_svn_push = git svn dcommit
git_svn_record = git commit -a "$@"
git_svn_diff = git diff "$@"
-git_svn_log = git log "$@"
+git_svn_log = git svn log "$@"
+
+git_test = perl:
+ -d "$ENV{MR_REPO}/.git" &&
+ `GIT_CONFIG="$ENV{MR_REPO}"/.git/config git config --get svn-remote.svn.url` eq ""
+
+git_svn_test = perl:
+ -d "$ENV{MR_REPO}/.git" &&
+ `GIT_CONFIG="$ENV{MR_REPO}"/.git/config git config --get svn-remote.svn.url` ne ""
+
+git_svn_register =
+ url="`LC_ALL=C git config --get svn-remote.svn.url`" || true
+ if [ -z "$url" ]; then
+ error "cannot determine git svn url"
+ fi
+ echo "Registering git svn url: $url in $MR_CONFIG"
+ mr -c "$MR_CONFIG" config "`pwd`" checkout="git svn clone '$url' '$MR_REPO'"
# vim:sw=8:sts=0:ts=8:noet