reassign 702697 src:git 1:1.8.2~rc3-1 clone 702697 -1 retitle 702697 RFP: git-bzr -- bzr remote helper from git/contrib/remote-helpers retitle -1 RFP: git-mercurial -- hg remote helper from git/contrib/remote-helpers tags 702697 + patch quit
Hi Paul, Paul Wise wrote: > Please move these two files to the correct path and give them execute > permissions so that git clone hg::... and git clone bzr::... work out of > the box. For now I've enabled them via a wrapper script in $PATH. > > /usr/share/doc/git/contrib/remote-helpers/git-remote-bzr > /usr/share/doc/git/contrib/remote-helpers/git-remote-hg Thanks for filing this. Upstream doesn't include documentation or installation rules for these, so splitting into two bugs to track work on each separately.
From: Jonathan Nieder <jrnie...@gmail.com> Date: Sun, 24 Mar 2013 19:03:53 -0700 Subject: debian: package bzr remote helper as git-bzr package Install the remote helper to gitexecdir because (in principle) it is tied to the version of git it was installed with. Longer term, this should probably be registered through the alternatives system to allow sysadmins and users to decide between this remote helper and the one shipped with bzr-git. Signed-off-by: Jonathan Nieder <jrnie...@gmail.com> --- debian/changelog | 10 ++++++++++ debian/control | 26 ++++++++++++++++++++++++-- debian/git-doc.docs | 1 + debian/git-remote-bzr.txt | 41 +++++++++++++++++++++++++++++++++++++++++ debian/rules | 24 +++++++++++++++++++++--- 5 files changed, 97 insertions(+), 5 deletions(-) create mode 100644 debian/git-remote-bzr.txt diff --git a/debian/changelog b/debian/changelog index d939512a..e3e8d861 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,6 +1,16 @@ git (1:1.8.2-0.1) experimental; urgency=low * new upstream release (see RelNotes/1.8.2.txt). + * add a git-bzr package with bzr remote helper (closes: #702697). + * debian/control: new package git-bzr; Priority: extra; Depends: + python-bzrlib; Conflicts: bzr-git; package git now Suggests and + git-all Recommends: git-bzr. + * debian/git-remote-bzr.txt: new; explain usage. + * debian/rules: process debian/git-remote-bzr.txt with git's + documentation toolchain and install to /usr/share/man/man1/; + munge contrib/remote-helpers/git-remote-bzr shebang line and + install to /usr/lib/git-core. + * debian/git-doc.docs: install git-remote-bzr.html. * debian/control: Standards-Version: 3.9.4.0. * debian/implicit: mark every order-only dependency with '|', not just the first one for each target. diff --git a/debian/control b/debian/control index 5a9ae8b0..b2951de3 100644 --- a/debian/control +++ b/debian/control @@ -26,7 +26,8 @@ Depends: ${shlibs:Depends}, perl-modules, liberror-perl, libc6.1 (>= 2.10.2-6) [ia64] Recommends: patch, less, rsync, ssh-client Suggests: gettext-base, git-daemon-run | git-daemon-sysvinit, - git-doc, git-el, git-arch, git-cvs, git-svn, git-email, git-gui, gitk, gitweb + git-doc, git-el, git-email, git-gui, gitk, gitweb, + git-arch, git-bzr, git-cvs, git-svn Replaces: gitweb (<< 1:1.7.4~rc1), cogito (<< 0.16rc2-0), git-core (<< 1:1.7.0.4-1.) Breaks: bash-completion (<< 1:1.90-1), gitweb (<< 1:1.7.4~rc1), @@ -126,6 +127,27 @@ Description: fast, scalable, distributed revision control system (arch interoper This package provides tools for importing development history from arch repositories. +Package: git-bzr +Priority: extra +Architecture: all +Multi-Arch: foreign +Depends: git (>> ${source:Upstream-Version}), git (<< ${source:Upstream-Version}-.), python-bzrlib +Suggests: git-doc, bzr +Conflicts: bzr-git +Description: fast, scalable, distributed revision control system (bzr interoperability) + Git is a popular version control system designed to handle very large + projects with speed and efficiency; it is used for many high profile + open source projects, most notably the Linux kernel. + . + Git falls in the category of distributed source code management tools. + Every Git working directory is a full-fledged repository with full + revision tracking capabilities, not dependent on network access or a + central server. + . + This package provides the bzr remote helper, which allows Git to + read from and write to Bazaar repositories as though they were remote + Git repositories. + Package: git-cvs Architecture: all Multi-Arch: foreign @@ -340,7 +362,7 @@ Architecture: all Multi-Arch: foreign Depends: git (>> ${source:Upstream-Version}), git (<< ${source:Upstream-Version}-.), git-doc, git-el, git-arch, git-cvs, git-svn, git-email, git-gui, gitk, gitweb -Recommends: git-daemon-run | git-daemon-sysvinit +Recommends: git-bzr, git-daemon-run | git-daemon-sysvinit Description: fast, scalable, distributed revision control system (all subpackages) Git is popular version control system designed to handle very large projects with speed and efficiency; it is used for many high profile diff --git a/debian/git-doc.docs b/debian/git-doc.docs index b0a52bca..4caccf45 100644 --- a/debian/git-doc.docs +++ b/debian/git-doc.docs @@ -1,2 +1,3 @@ tmp/html/* +debian/git-remote-bzr.html Documentation/technical diff --git a/debian/git-remote-bzr.txt b/debian/git-remote-bzr.txt new file mode 100644 index 00000000..bb3d44c2 --- /dev/null +++ b/debian/git-remote-bzr.txt @@ -0,0 +1,41 @@ +git-remote-bzr(1) +================= + +NAME +---- +git-remote-bzr - Fetch from or push to a Bazaar repository + +SYNOPSIS +-------- +'git clone' bzr::/path/to/bzr/repo/or/url + +DESCRIPTION +----------- + +This remote helper allows commands like 'git fetch' and 'git push' +to access a repository that was created using the *bzr*(1) tool. + +Any URL that Bazaar supports can be used by preceding it with +"bzr::". For example: + +- bzr::bzr+ssh://host.xz/path/to/bzr/trunk - Bazaar smart server over SSH +- bzr::http://host.xz/path/to/bzr/trunk - read-only HTTP +- bzr::ftp://host.xz/path/to/bzr/trunk - passive FTP +- bzr::sftp://host.xz/path/to/bzr/trunk - SFTP +- bzr::/path/to/bzr/trunk - local filesystem + +The URL prefix "bzr://" can be used as an abbreviation for +"bzr::bzr://" to refer to access over Bazaar protocol. + +DEPENDENCIES +------------ +bzrlib (the Bazaar Python library) + +SEE ALSO +-------- +linkgit:git-fetch[1], *bzr*(1), "bzr help urlspec", +linkgit:gitremote-helpers[1] + +GIT +--- +Part of the linkgit:git[1] suite diff --git a/debian/rules b/debian/rules index 43b47658..9ca97c3c 100755 --- a/debian/rules +++ b/debian/rules @@ -57,9 +57,15 @@ build-arch-stamp: patch-stamp build-indep: deb-checkdir build-indep-stamp build-indep-stamp: patch-stamp build-arch-stamp $(MAKE) -CDocumentation man html $(DOC_OPTS) + $(MAKE) -CDocumentation $(DOC_OPTS) \ + MAN_TXT=../debian/git-remote-bzr.txt \ + ../debian/git-remote-bzr.1 \ + ../debian/git-remote-bzr.html; \ touch build-indep-stamp clean: deb-checkdir + rm -f debian/git-remote-bzr.xml debian/git-remote-bzr.html + rm -f Documentation/git-remote-bzr.1 $(MAKE) clean $(OPTS) ! test -e patch-stamp || \ for i in `ls -1r debian/diff/*.diff debian/diff/*.patch \ @@ -68,7 +74,7 @@ clean: deb-checkdir done rm -rf '$(TMP)' rm -f patch-stamp build-arch-stamp build-indep-stamp - rm -rf '$(GIT)' '$(GIT)'-doc '$(GIT)'-arch '$(GIT)'-cvs + rm -rf '$(GIT)' '$(GIT)'-doc '$(GIT)'-arch '$(GIT)'-bzr '$(GIT)'-cvs rm -rf '$(GIT)'-svn '$(GIT)'-email '$(GIT)'-el rm -rf '$(GIT)'-daemon-run '$(GIT)'-daemon-sysvinit '$(GIT)'-gui rm -rf '$(GIT)'k '$(GIT)'web '$(GIT)'-all '$(GIT)'-man '$(GIT)'-core @@ -187,6 +193,17 @@ install-indep: build-arch-stamp build-indep-stamp install -m0644 '$(TMP)'/usr/share/man/man1/git-archimport.1 \ '$(GIT)'-arch/usr/share/man/man1/ gzip -9 '$(GIT)'-arch/usr/share/man/man1/*.1 + # git-bzr + rm -rf '$(GIT)'-bzr + install -d -m0755 '$(GIT)'-bzr/usr/lib/git-core + sed -e 's,/usr/bin/env python,/usr/bin/python,' \ + contrib/remote-helpers/git-remote-bzr \ + >'$(GIT)'-bzr/usr/lib/git-core/git-remote-bzr + chmod 0755 '$(GIT)'-bzr/usr/lib/git-core/git-remote-bzr + install -d -m0755 '$(GIT)'-bzr/usr/share/man/man1 + install -m0644 Documentation/git-remote-bzr.1 \ + '$(GIT)'-bzr/usr/share/man/man1/ + gzip -9 '$(GIT)'-bzr/usr/share/man/man1/*.1 # git-email rm -rf '$(GIT)'-email install -d -m0755 '$(GIT)'-email/usr/lib/git-core @@ -288,12 +305,13 @@ binary-arch: install-arch git.deb dpkg-shlibdeps '$(GIT)'/usr/bin/* '$(GIT)'/usr/lib/git-core/* dpkg-gencontrol -isp -pgit -P'$(GIT)' dpkg -b '$(GIT)' .. -binary-indep: install-indep git-doc.deb git-arch.deb git-cvs.deb git-svn.deb \ +binary-indep: install-indep git-doc.deb \ + git-arch.deb git-bzr.deb git-cvs.deb git-svn.deb \ git-daemon-run.deb git-daemon-sysvinit.deb \ git-email.deb git-gui.deb gitk.deb gitweb.deb \ git-all.deb git-el.deb git-man.deb git-core.deb-DEBIAN rm -f debian/substvars - for i in -doc -arch -cvs -svn -daemon-run -daemon-sysvinit \ + for i in -doc -arch -bzr -cvs -svn -daemon-run -daemon-sysvinit \ -email -gui k web -all -core -el -man; do \ dpkg-gencontrol -isp -pgit$$i -P'$(GIT)'$$i && \ dpkg -b '$(GIT)'$$i .. || exit 1; \ -- 1.8.2.rc3