]> git.madduck.net Git - code/myrepos.git/commitdiff

madduck's git repository

Every one of the projects in this repository is available at the canonical URL git://git.madduck.net/madduck/pub/<projectpath> — see each project's metadata for the exact URL.

All patches and comments are welcome. Please squash your changes to logical commits before using git-format-patch and git-send-email to patches@git.madduck.net. If you'd read over the Git project's submission guidelines and adhered to them, I'd be especially grateful.

SSH access, as well as push access can be individually arranged.

If you use my repositories frequently, consider adding the following snippet to ~/.gitconfig and using the third clone URL listed for each project:

[url "git://git.madduck.net/madduck/"]
  insteadOf = madduck:

vcsh is now supported without including a plugin.
authorJoey Hess <joey@kitenet.net>
Fri, 3 Feb 2012 01:33:41 +0000 (21:33 -0400)
committerJoey Hess <joey@kitenet.net>
Fri, 3 Feb 2012 01:33:41 +0000 (21:33 -0400)
debian/changelog
debian/control
lib/vcsh
mr

index f437fdd4d175d1925bef7548abd9c9451dbd0dca..f5a731840824830e25f1bdcf2a69b863b3e55d22 100644 (file)
@@ -1,6 +1,7 @@
 mr (1.11) UNRELEASED; urgency=low
 
   * Now supports the veracity vcs. Thanks, Jimmy Tang.
 mr (1.11) UNRELEASED; urgency=low
 
   * Now supports the veracity vcs. Thanks, Jimmy Tang.
+  * vcsh is now supported without including a plugin.
 
  -- Joey Hess <joeyh@debian.org>  Mon, 09 Jan 2012 17:12:58 -0400
 
 
  -- Joey Hess <joeyh@debian.org>  Mon, 09 Jan 2012 17:12:58 -0400
 
index 2230aea96ecf35e33a99c086de82e0f0daa4c9de..8b4a60b25c33a0ef2cd9fb30fdc20c315c378cf8 100644 (file)
@@ -16,9 +16,9 @@ Recommends: libwww-perl, libhtml-parser-perl, perl
 Description: Multiple Repository management tool
  The mr(1) command can checkout, update, or perform other actions on
  a set of repositories as if they were one combined respository. It
 Description: Multiple Repository management tool
  The mr(1) command can checkout, update, or perform other actions on
  a set of repositories as if they were one combined respository. It
- supports any combination of git, svn, mercurial, bzr, darcs, cvs, and
- fossil repositories, and support for other version control systems
- can easily be added. (There are extensions adding support for unison
+ supports any combination of git, svn, mercurial, bzr, darcs, cvs, vcsh,
+ fossil, and veracity repositories, and support for other version control
systems can easily be added. (There are extensions adding support for unison
  and git-svn, among others.)
  .
  It is extremely configurable via simple shell scripting. Some examples
  and git-svn, among others.)
  .
  It is extremely configurable via simple shell scripting. Some examples
index 6681efd7a6ec107bfb3bcd973bfd0cb24e5f7a4d..56f81d57c24a89d8c5d1937f15daaa874150b52a 100644 (file)
--- a/lib/vcsh
+++ b/lib/vcsh
@@ -2,39 +2,9 @@
 # section of your ~/.mrconfig
 #include = cat /usr/share/mr/vcsh
 
 # section of your ~/.mrconfig
 #include = cat /usr/share/mr/vcsh
 
+# But, that's pointless to do, since the vcsh support has been moved from
+# this plugin into mr.
+
 # And an example repo using it would look something like:
 #[$HOME/.config/vcsh/repo.d/zsh.git]
 #checkout = vcsh clone git://github.com/RichiH/zshrc.git zsh
 # And an example repo using it would look something like:
 #[$HOME/.config/vcsh/repo.d/zsh.git]
 #checkout = vcsh clone git://github.com/RichiH/zshrc.git zsh
-
-vcsh_test = perl:
-       -d "$ENV{MR_REPO}/refs/heads" && -d "$ENV{MR_REPO}/refs/tags" &&
-       -d "$ENV{MR_REPO}/objects" && -f "$ENV{MR_REPO}/config" &&
-       `GIT_CONFIG="$ENV{MR_REPO}"/config git config --get vcsh.vcsh` =~ /true/
-
-vcsh_update = vcsh run "$MR_REPO" git pull "$@"
-
-vcsh_status = cd $(vcsh run "$MR_REPO" git config --get core.worktree); vcsh run "$MR_REPO" git status -s "$@" || true
-
-vcsh_commit = vcsh run "$MR_REPO" git commit -a "$@" && vcsh run "$MR_REPO" git push --all
-
-vcsh_record = vcsh run "$MR_REPO" git commit -a "$@"
-
-vcsh_push = vcsh run "$MR_REPO" git push "$@"
-
-vcsh_diff = vcsh run "$MR_REPO" git diff "$@"
-
-vcsh_log = vcsh run "$MR_REPO" git log "$@"
-
-vcsh_run = vcsh run "$MR_REPO" "$@"
-
-vcsh_gc = vcsh run "$MR_REPO" git gc "$@"
-
-vcsh_register =
-       url="`LC_ALL=C vcsh run "$MR_REPO" git config --get remote.origin.url`" || true
-       if [ -z "$url" ]; then
-               error "cannot determine git url"
-       fi
-       echo "Registering git url: $url in $MR_CONFIG"
-       mr -c "$MR_CONFIG" config "`pwd`" checkout="vcsh clone '$url' '$MR_REPO'"
-
-vcsh_trusted_checkout = vcsh run "$MR_REPO" git clone $url $repo
diff --git a/mr b/mr
index 58ebceb847ce97bf24397b35124ec73d1500b428..7147061b2019a93d5e889c3b40ffa6f87d24c17a 100755 (executable)
--- a/mr
+++ b/mr
@@ -405,7 +405,7 @@ Unlike all other parameters, this parameter does not need to be placed
 within a section.
 
 B<mr> ships several libraries that can be included to add support for
 within a section.
 
 B<mr> ships several libraries that can be included to add support for
-additional version control type things (unison, git-svn, vcsh, git-fake-bare,
+additional version control type things (unison, git-svn, git-fake-bare,
 git-subtree). To include them all, you could use:
 
   include = cat /usr/share/mr/*
 git-subtree). To include them all, you could use:
 
   include = cat /usr/share/mr/*
@@ -1868,6 +1868,10 @@ git_bare_test = perl:
        -d "$ENV{MR_REPO}/refs/heads" && -d "$ENV{MR_REPO}/refs/tags" &&
        -d "$ENV{MR_REPO}/objects" && -f "$ENV{MR_REPO}/config" &&
        `GIT_CONFIG="$ENV{MR_REPO}"/config git config --get core.bare` =~ /true/
        -d "$ENV{MR_REPO}/refs/heads" && -d "$ENV{MR_REPO}/refs/tags" &&
        -d "$ENV{MR_REPO}/objects" && -f "$ENV{MR_REPO}/config" &&
        `GIT_CONFIG="$ENV{MR_REPO}"/config git config --get core.bare` =~ /true/
+vcsh_test = perl:
+       -d "$ENV{MR_REPO}/refs/heads" && -d "$ENV{MR_REPO}/refs/tags" &&
+       -d "$ENV{MR_REPO}/objects" && -f "$ENV{MR_REPO}/config" &&
+       `GIT_CONFIG="$ENV{MR_REPO}"/config git config --get vcsh.vcsh` =~ /true/
 veracity_test  = perl: -d "$ENV{MR_REPO}/.sgdrawer"
 
 svn_update = svn update "$@"
 veracity_test  = perl: -d "$ENV{MR_REPO}/.sgdrawer"
 
 svn_update = svn update "$@"
@@ -1882,6 +1886,7 @@ cvs_update = cvs update "$@"
 hg_update  = hg pull "$@" && hg update "$@"
 darcs_update = darcs pull -a "$@"
 fossil_update = fossil pull "$@"
 hg_update  = hg pull "$@" && hg update "$@"
 darcs_update = darcs pull -a "$@"
 fossil_update = fossil pull "$@"
+vcsh_update = vcsh run "$MR_REPO" git pull "$@"
 veracity_update = vv pull "$@" && vv update "$@"
 
 svn_status = svn status "$@"
 veracity_update = vv pull "$@" && vv update "$@"
 
 svn_status = svn status "$@"
@@ -1891,6 +1896,7 @@ cvs_status = cvs status "$@"
 hg_status  = hg status "$@"
 darcs_status = darcs whatsnew -ls "$@" || true
 fossil_status = fossil changes "$@"
 hg_status  = hg status "$@"
 darcs_status = darcs whatsnew -ls "$@" || true
 fossil_status = fossil changes "$@"
+vcsh_status = cd $(vcsh run "$MR_REPO" git config --get core.worktree); vcsh run "$MR_REPO" git status -s "$@" || true
 veracity_status = vv status "$@"
 
 svn_commit = svn commit "$@"
 veracity_status = vv status "$@"
 
 svn_commit = svn commit "$@"
@@ -1905,6 +1911,7 @@ cvs_commit = cvs commit "$@"
 hg_commit  = hg commit -m "$@" && hg push
 darcs_commit = darcs record -a -m "$@" && darcs push -a
 fossil_commit = fossil commit "$@"
 hg_commit  = hg commit -m "$@" && hg push
 darcs_commit = darcs record -a -m "$@" && darcs push -a
 fossil_commit = fossil commit "$@"
+vcsh_commit = vcsh run "$MR_REPO" git commit -a "$@" && vcsh run "$MR_REPO" git push --all
 veracity_commit = vv commit -m "@" && vv push
 
 git_record = git commit -a "$@"
 veracity_commit = vv commit -m "@" && vv push
 
 git_record = git commit -a "$@"
@@ -1917,6 +1924,7 @@ bzr_record =
 hg_record  = hg commit -m "$@"
 darcs_record = darcs record -a -m "$@"
 fossil_record = fossil commit "$@"
 hg_record  = hg commit -m "$@"
 darcs_record = darcs record -a -m "$@"
 fossil_record = fossil commit "$@"
+vcsh_record = vcsh run "$MR_REPO" git commit -a "$@"
 veracity_record = vv commit -m "@"
 
 svn_push = :
 veracity_record = vv commit -m "@"
 
 svn_push = :
@@ -1926,6 +1934,7 @@ cvs_push = :
 hg_push = hg push "$@"
 darcs_push = darcs push -a "$@"
 fossil_push = fossil push "$@"
 hg_push = hg push "$@"
 darcs_push = darcs push -a "$@"
 fossil_push = fossil push "$@"
+vcsh_push = vcsh run "$MR_REPO" git push "$@"
 veracity_push = vv push "$@"
 
 svn_diff = svn diff "$@"
 veracity_push = vv push "$@"
 
 svn_diff = svn diff "$@"
@@ -1935,6 +1944,7 @@ cvs_diff = cvs diff "$@"
 hg_diff  = hg diff "$@"
 darcs_diff = darcs diff -u "$@"
 fossil_diff = fossil diff "$@"
 hg_diff  = hg diff "$@"
 darcs_diff = darcs diff -u "$@"
 fossil_diff = fossil diff "$@"
+vcsh_diff = vcsh run "$MR_REPO" git diff "$@"
 veracity_diff = vv diff "$@"
 
 svn_log = svn log "$@"
 veracity_diff = vv diff "$@"
 
 svn_log = svn log "$@"
@@ -1945,6 +1955,7 @@ hg_log  = hg log "$@"
 darcs_log = darcs changes "$@"
 git_bare_log = git log "$@"
 fossil_log = fossil timeline "$@"
 darcs_log = darcs changes "$@"
 git_bare_log = git log "$@"
 fossil_log = fossil timeline "$@"
+vcsh_log = vcsh run "$MR_REPO" git log "$@"
 veracity_log = vv log "$@"
 
 run = "$@"
 veracity_log = vv log "$@"
 
 run = "$@"
@@ -1993,6 +2004,13 @@ git_bare_register =
        fi
        echo "Registering git url: $url in $MR_CONFIG"
        mr -c "$MR_CONFIG" config "`pwd`" checkout="git clone --bare '$url' '$MR_REPO'"
        fi
        echo "Registering git url: $url in $MR_CONFIG"
        mr -c "$MR_CONFIG" config "`pwd`" checkout="git clone --bare '$url' '$MR_REPO'"
+vcsh_register =
+       url="`LC_ALL=C vcsh run "$MR_REPO" git config --get remote.origin.url`" || true
+       if [ -z "$url" ]; then
+               error "cannot determine git url"
+       fi
+       echo "Registering git url: $url in $MR_CONFIG"
+       mr -c "$MR_CONFIG" config "`pwd`" checkout="vcsh clone '$url' '$MR_REPO'"
 fossil_register =
        url=`fossil remote-url`
        repo=`fossil info | grep repository | sed -e 's/repository:*.//g' -e 's/ //g'`
 fossil_register =
        url=`fossil remote-url`
        repo=`fossil info | grep repository | sed -e 's/repository:*.//g' -e 's/ //g'`
@@ -2012,6 +2030,7 @@ bzr_trusted_checkout = bzr checkout|clone|branch|get $url $repo
 hg_trusted_checkout = hg clone $url $repo
 darcs_trusted_checkout = darcs get $url $repo
 git_bare_trusted_checkout = git clone --bare $url $repo
 hg_trusted_checkout = hg clone $url $repo
 darcs_trusted_checkout = darcs get $url $repo
 git_bare_trusted_checkout = git clone --bare $url $repo
+vcsh_trusted_checkout = vcsh run "$MR_REPO" git clone $url $repo
 # fossil: messy to do
 veracity_trusted_checkout = vv clone $url $repo
 
 # fossil: messy to do
 veracity_trusted_checkout = vv clone $url $repo