Version control 集市(bzr)预定义位置

Version control 集市(bzr)预定义位置,version-control,dvcs,bazaar,Version Control,Dvcs,Bazaar,Bazaar有一个Launchpad伪协议(lp:),用户可以在远程分支中操作,而无需写入完整的Launchpad位置。我正在寻找一种方法,以如下方式创建自己的伪协议(类似于GIT): …而不是 bzr push sftp://myuser@myserver.com/home/myuser/myrepo/mybranch bzr push sftp://myuser@myserver.com/home/myuser/myrepo/otherbranch bzr push sftp://myuse

Bazaar有一个Launchpad伪协议(lp:),用户可以在远程分支中操作,而无需写入完整的Launchpad位置。我正在寻找一种方法,以如下方式创建自己的伪协议(类似于GIT):

…而不是

bzr push sftp://myuser@myserver.com/home/myuser/myrepo/mybranch
bzr push sftp://myuser@myserver.com/home/myuser/myrepo/otherbranch
bzr push sftp://myuser@myserver.com/home/myuser/myrepo/anotherbranch
…真是让人讨厌

我读过bazaar.conf,但它似乎只能为每个分支/回购设置全局推送位置。我看到的另一种方法是使用alias,但有同样的问题,当需要创建新分支时,它非常难看


是否可以在不修改BZR代码的情况下执行此操作?这应该是显而易见的…

bzr中名为目录服务的my:xxx语法。您可以通过插件(用Python编写)定义自己的目录服务

这类插件的好例子是。检查一下


也许这个插件本身就足以满足您的需要。

解决方案是将bzr书签插件安装为~/.bazaar/plugins/bookmarks,然后:

bzr bookmark my sftp://myuser@myserver.com/home/myuser/myrepo/
bzr push bm:my/mybranch
bzr push bm:my/otherbranch
bzr push bm:my/anotherbranch

工作很好,谢谢!但默认情况下应安装此选项。我不能投票支持你。。。然而(注意间接的)
bzr bookmark my sftp://myuser@myserver.com/home/myuser/myrepo/
bzr push bm:my/mybranch
bzr push bm:my/otherbranch
bzr push bm:my/anotherbranch