这是一份非常简要的五分钟教程,只涉及初次接触 bzr 的用户使用 Bazaar-NG 来管理项目所需的知识。
相关资料:
请参看 Distro下载 ,可能已经存在您所用发行版对应的软件包。
您也许希望自己的名字和 email 出现在修订日志里。
创建 ~/.bazaar/bazaar.conf ,并加上自己的 email :
[DEFAULT]
email = Joe Doe <joe.doe@gmail.com>
现在输入如下命令:
$ bzr whoami
Joe Doe <joe.doe@gmail.com>
您可以在自己的分支上开展工作。在创建好分支后,您就不再需要通过 web 访问来提交自己的修改:
$ bzr branch http://examle.com/code/foobar.dev foobar.joe
Branched 1 revision(s).
$ cd foobar.joe
$ hack...
来看看自己的成果:
$ bzr diff
=== modified file 'foo.c'
--- foo.c
+++ foo.c
@@ -30,6 +30,7 @@
#include "foo.h"
+
static PyObject *
_pyfribidi_log2vis (PyObject * self, PyObject * args, PyObject * kw)
{
该是时候提交自己的辛苦劳动:
$ bzr commit -m 'added some whitespace'
Committed revision 2.
$ bzr log
------------------------------------------------------------
revno: 2
committer: Joe Doe <joe.doe@gmail.com>
branch nick: foobar.joe
timestamp: Mon 2006-02-06 01:33:35 +0200
message:
added some whitespace
------------------------------------------------------------
revno: 1
committer: James Hacker <jmh@example.com>
branch nick: foobar.dev
timestamp: Mon 2006-02-06 01:06:11 +0200
message:
initial revision
当您还在勤勤恳恳的耕耘着自己的分支,其他人或许已经向主分支提交了新的代码。有时,您也许想把主分支上的修改合并到自己的分支里:
$ bzr merge
Using saved location: http://examle.com/code/foobar.dev
All changes applied successfully.
主分支里作了哪些修改?
$ bzr diff
=== modified file 'pyfribidi.c'
--- pyfribidi.c
+++ pyfribidi.c
@@ -236,6 +236,7 @@
PyMem_Del (logical);
PyMem_Del (visual);
+ /* evil hack! */
return result;
}
提交取自主分支的修改(注:当然是提交到自己的分支里):
$ bzr commit -m 'merge from main branch'
Committed revision 6.
您可以直接使用 rsync 把自己的分支拷贝到 web 服务器上,不过最简单的方法是使用 bzr push 命令。注意该命令将用到 sftp,您还需要安装 paramiko 和 pyCrypto 。请参看 安装 wiki 页面。
假定您打算把自己的分支发布到 jod.example.com/foobar.joe 里:
$ bzr push sftp://jod@jod.example.com/public_html/foobar.joe/
2 revision(s) pushed.
现在所有人都可以使用如下命令取得您的分支了(您自己不妨也试试):
bzr get http://jod.example.com/foobar.joe/
欲详细了解 bzr 命令,则::
$ bzr help commands
比如,欲详细了解 foo 命令,可使用如下命令::
$ bzr help foo
转发至微博
转发至微博
评论