(假设本地“独立”bzr 共享存储库。)
使用的有趣的 bzr 命令:bzr init-repo
, bzr init
, bzr branch
, bzr info
, bzr add
, bzr commit
, bzr remove-tree
, bzr remove-branch
.
在共享存储库中设置单个分支
/tmp
在您的目录中设置一个共享存储库以供使用。
$ cd /tmp/
$ bzr init-repo test-shared-repo
$ bzr info test-shared-repo/
产量:
Shared repository with trees (format: 2a)
Location:
shared repository: test-shared-repo
然后我们创建一个地方来在该共享仓库中存储一些代码:
$ bzr init test-shared-repo/first
产生以下结果,这意味着“首先”正在使用我们在上面创建的共享存储库(它也恰好存储在那里):
Using shared repository: /tmp/test-shared-repo/
然后我们进入共享 repo 目录并获取共享 repo 的信息:
$ cd test-shared-repo
$ bzr info
这会产生以下内容,重申我们创建它时给出的内容:
Shared repository with trees (format: 2a)
Location:
shared repository: .
让我们也检查一下我们创建的“第一个”事物的信息:
$ bzr info first/
产生以下内容,表明“第一个”是使用位于以下位置的共享存储库的存储库分支.
:
Repository tree (format: 2a)
Location:
shared repository: .
repository branch: first
将代码添加到第一个并从中分支第二个
让我们创建、添加和提交一些“代码”到我们的“第一个”分支,然后返回到共享仓库:
$ cd first/
$ echo "some text" > a_file.txt
$ bzr add a_file.txt
$ bzr commit -m 'a commit message'
$ cd ..
现在从“第一”分支到“第二”:
$ bzr branch first second
产生以下结果,这表明 "second" 引用了 "first":
Repository tree (format: 2a)
Location:
shared repository: .
repository branch: second
Related branches:
parent branch: first
但是,如果您检查bzr info first
,则可以确认没有提及“第二”。确认“第二”中有一些东西:
$ ls second
a_file.txt
删除其中一个分支
假设我们已经完成了“第一”或“第二”,因为我们已经完成了错误修复等。问题是我们目前不能在其中任何一个上使用“bzr remove-branch ”:
$ bzr remove-branch first
bzr: ERROR: Branch is active. Use --force to remove it.
$ bzr remove-branch second
bzr: ERROR: Branch is active. Use --force to remove it.
然而,我发现了一个叫做bzr remove-tree
的东西,这似乎可以解决问题。它会抹去内容(我认为如果没有未提交的更改),所以要小心!
$ bzr remove-tree second
$ ls -a second
. .. .bzr
文件在“第二”中消失了。但是还是有一些提到“第一”:
$ bzr info second
Repository branch (format: 2a)
Location:
shared repository: .
repository branch: second
Related branches:
parent branch: first
所以,现在让我们试试bzr remove-branch
“第二个”:
$ bzr remove-branch second
$ bzr info second
Empty control directory (format: 2a or pack-0.92)
Location:
control directory: second
似乎“第二个”中的所有内容都消失了,然后我可以安全地丢弃(rm
/ del
)“第二个”目录。
(其他人,请编辑此内容以提供有关在共享存储库中删除分支的正确方法的更多信息。)