From: Joey Hess Date: Tue, 27 Sep 2011 21:38:18 +0000 (-0400) Subject: Support bzr checkouts, which are updated with "bzr update", and to which bzr automati... X-Git-Url: https://git.madduck.net/code/myrepos.git/commitdiff_plain/3d39c568b0f5559c4bf1e3c054588ca255c26e21?ds=inline;hp=b1bcef3dd99ffcc1d7140fad5b3a72bebff4a571 Support bzr checkouts, which are updated with "bzr update", and to which bzr automatically pushes commits. Closes: #643589 --- diff --git a/debian/changelog b/debian/changelog index 766b8da..5199ab4 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -mr (1.05) UNRELEASED; urgency=low +mr (1.05) unstable; urgency=low * Avoid using sed -r in git-fake-bare, for OSX portability. * git-fake-bare: handle fake bare repositories with core.bare not set @@ -9,8 +9,10 @@ mr (1.05) UNRELEASED; urgency=low * Allow untrusted mrconfig files to set parameters to true/false. So skip=true or deleted=true canbe used in an untrusted mrconfig file. * Also allow order=N in an untrusted mrconfig file. + * Support bzr checkouts, which are updated with "bzr update", + and to which bzr automatically pushes commits. Closes: #643589 - -- Joey Hess Fri, 05 Aug 2011 13:29:21 -0400 + -- Joey Hess Tue, 27 Sep 2011 17:28:35 -0400 mr (1.04) unstable; urgency=low diff --git a/mr b/mr index d5424ca..10a547f 100755 --- a/mr +++ b/mr @@ -1688,6 +1688,9 @@ lib = return 0 fi } + is_bzr_checkout() { + LANG=C bzr info | egrep -q '^Checkout' + } svn_test = test -d "$MR_REPO"/.svn git_test = test -d "$MR_REPO"/.git @@ -1703,7 +1706,12 @@ git_bare_test = svn_update = svn update "$@" git_update = git pull "$@" -bzr_update = bzr merge --pull "$@" +bzr_update = + if is_bzr_checkout; then + bzr update "$@" + else + bzr merge --pull "$@" + fi cvs_update = cvs update "$@" hg_update = hg pull "$@" && hg update "$@" darcs_update = darcs pull -a "$@" @@ -1719,7 +1727,12 @@ fossil_status = fossil changes "$@" svn_commit = svn commit "$@" git_commit = git commit -a "$@" && git push --all -bzr_commit = bzr commit "$@" && bzr push +bzr_commit = + if is_bzr_checkout; then + bzr commit "$@" + else + bzr commit "$@" && bzr push + fi cvs_commit = cvs commit "$@" hg_commit = hg commit -m "$@" && hg push darcs_commit = darcs record -a -m "$@" && darcs push -a