标签: bazaar

如何从bzr post-commit钩子获取提交消息?

我正在尝试为我的私有bugtracker写一个bzr post-commit钩子,但是我坚持使用post_commit的函数签名(local,master,old_revno,old_revid,new_revno,mew_revid).如何使用Python中的bzrlib从中提取分支的提交消息?

python dvcs bazaar

5
推荐指数
1
解决办法
677
查看次数

集市上的标签有什么意义?

在svn领域长时间露营之后,我开始使用集市.我之前也有过使用cvs的经验,偶尔也会使用标签.

使用svn,一旦发布版本,就可以将trunk的svn副本执行到标记中,例如svn copy trunk tags/1.2.0.在集市中我创建了相同的存储库结构,但缺少bzr复制选项和bzr标记的存在让我思考.

事实是,我发现标签要么难以使用,要么无用.如果我使用标签,我基本上将我的主干作为唯一目录,当我达到里程碑时,我会标记它.然后,当达到新的里程碑时,我会继续开发和标记.这使以下任务复杂化:

  • 将新版本与旧版本递归地进行比较(使用类似svn的方法:diff --brief -r)
  • 修复旧版本,并创建新版本及其补丁版本增加(使用类似svn的方法:svn copy 2.0.0 2.0.1,然后将修复程序添加到2.0.1并提交)
  • 得到你想要的版本而不必检查出来(如果你用svn-like检查整个树,你有所有版本和分支,你只做一次)

因此,我在bzr中使用相同的svn repo结构,并且每次都执行主干的物理副本.这意味着在这种安排中我没有看到任何真正使用bzr标记命令.为什么我应该用版本号标记整个repo修订版,如果它包含每个版本的所有修订版?

有谁能请指出我在使用和理解bzr回购标签时做错了什么?


编辑

因此,据我所知,每个版本都有不同的bzr分支(独立分支,来自主干通过bzr分支).它就像svn,只是你没有把根目录放在存储库中.我还是没有真正看到标签的任何特殊原因,除了事实,如果你说foo-1.0.0 foo-1.0.1 foo-2.0.0 foo-2.1.0 trunk

假设我总是在分支之前标记版本,trunk将为所有这些版本添加标签,而foo-2.0.0在其标签中将包含foo-1.0.0,但不包括foo-1.0.1,因为它是从foo-1.0分支的0.0.

我仍然没有真正看到拥有和使用标签的必要性.我的标签隐含在我为该分支选择的目录名中.我对特定版本号并不感兴趣,我只是对它进入特定目录感兴趣.

svn version-control bazaar

5
推荐指数
2
解决办法
2429
查看次数

在集市合并两个结账

我刚刚开始讨论集市,我发现结账功能对我的工作方式最有用 - 即我可以从"主副本"中进行c/o,进行一些开发然后将我的更改提交到新目录.然后,这将更新"主副本".

但是如果我正在研究(例如)两个项目,改变代码的不同部分呢?说:

~/master                - master copy
bzr co master ./gui
bzr co master ./engine
Run Code Online (Sandbox Code Playgroud)

所以我在./gui目录中执行gui相关的东西,在./engine中使用底层内容.我应该如何兑现我的更改?如果我首先使用gui,然后是引擎,我想任何冲突都会在引擎中被标记出来?

有没有办法合并gui和引擎,然后只做一次提交到主副本?

为了使事情变得更复杂,如果我这样做怎么样:

bzr branch gui ./mouse
Run Code Online (Sandbox Code Playgroud)

现在我也许我一直在研究鼠标,但也在gui上.如果我想合并来自gui和鼠标的代码,然后提交到master,那么管理它的最佳方法是什么?或者,如果我也:

bzr branch gui ./keyboard
Run Code Online (Sandbox Code Playgroud)

如果我改变了gui,键盘和鼠标,我应该分层合并 - 即鼠标+键盘,然后将其与gui合并,然后将gui提交给master?

我希望很清楚我正在努力实现的目标!在此先感谢您的时间.

merge bazaar checkout

5
推荐指数
1
解决办法
793
查看次数

Bazaar(bzr)预定义的位置

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

bzr remote my sftp://myuser@myserver.com/home/myuser/myrepo/
bzr push my:mybranch
bzr push my:otherbranch
bzr push my:anotherbranch
Run Code Online (Sandbox Code Playgroud)

...代替...

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
Run Code Online (Sandbox Code Playgroud)

......这是屁股的痛苦.

我对bazaar.conf很感兴趣,但似乎只能为每个分支/回购设置一个全局推送位置.我看到的另一种方法是使用别名,但有同样的问题,在创建新分支时需要非常难看.

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

version-control dvcs bazaar

5
推荐指数
2
解决办法
254
查看次数

bzr init-repo和多个项目

我理解困难bzr init-repo.

我想在他们自己的孤立存储库中拥有3个项目,在subversion中我将使用svnadmin create三次来创建它们.像这样:

svnadmin create MyProject
svnadmin create MyHomepage
svnadmin create MyDocuments
Run Code Online (Sandbox Code Playgroud)

以上将给出3个孤立的subversion存储库.

如何创建3个独立的共享集市存储库?

你会这样做吗?

bzr init-repo ./repo
bzr init ./repo/MyProject
bzr init ./repo/MyHomepage
bzr init ./repo/MyDocuments
Run Code Online (Sandbox Code Playgroud)

或者你会这样做吗?

bzr init-repo ./MyProject
bzr init ./MyProject/trunk

bzr init-repo ./MyHomepage
bzr init ./MyHomepage/trunk

bzr init-repo ./MyDocuments
bzr init ./MyDocuments/trunk
Run Code Online (Sandbox Code Playgroud)

或者还有另一种方式吗?

dvcs bazaar

5
推荐指数
2
解决办法
1386
查看次数

从Bazaar推到Github

我在Bazaar中开发代码并希望在Github上发布它.实现这一目标的最佳方法是什么?

如果解决方案仅提供将Bazaar存储库中的一个分支推送到Github的方法,那就没关系.

bazaar github

5
推荐指数
1
解决办法
1032
查看次数

从集市转换为git并同步它们的正确方法

我在集市上有一个开发库,我想将其转换为git并保持同步。我需要这样做,因为我将与不认识集市的人共享我的代码。

首先,我需要将集市仓库转换为git。我到处搜索,发现博客提到了从集市转换为git的简单步骤。但是当我尝试运行bzr fast-export它时,它说没有这样的命令。

我尝试通过安装bzr fast-export sudo apt-get install bzr-fastexport。看来我实际上必须安装fastimport。所以我尝试了:sudo apt-get install bzr-fastimport。现在,我也可以运行bzr fastexport。并且以下命令成功完成了:

bzr fast-export | git fast-import
Run Code Online (Sandbox Code Playgroud)

现在我在git中有相同的仓库。但是如何保持同步?谷歌搜索后,我发现我必须使用git-bzr-ng,但是在github仓库上没有说明。任何想法如何?或其他任何选择?

git bazaar git-fast-import

5
推荐指数
1
解决办法
1512
查看次数

如何从emacs中提交对bzr分支的更改?

我在emacs中进行大部分开发,并使用bzr进行版本控制.我推断这c-x v =相当于bzr diff,但我不清楚如何从emacs中提交,或者各种bzr命令如何映射到emacs键绑定.任何人都可以建议最好的方法或指向我的教程吗?

emacs bazaar

4
推荐指数
1
解决办法
232
查看次数

Bazaar:如何显示文件更改的历史记录?

嘿我正在为我的代码使用集市,我想显示特定文件的更改历史,而不是显示整个集市回购的变化.我怎么能这样做?

version-control bazaar

4
推荐指数
2
解决办法
2018
查看次数

如何撤消bzr mv --auto

执行bzr mv --auto删除的文件后,新文件被错误地选为移动文件,现在显示为重命名bzr status.如何更改此项以便将新文件再次标记为新文件(并将其删除为已删除)?

bazaar

4
推荐指数
1
解决办法
237
查看次数

标签 统计

bazaar ×10

dvcs ×3

version-control ×3

checkout ×1

emacs ×1

git ×1

git-fast-import ×1

github ×1

merge ×1

python ×1

svn ×1