bzr怎么搁置?

时间:2014-04-10 13:29:11

标签: repository bazaar

根据文档我有疑问 http://doc.bazaar.canonical.com/beta/en/user-reference/shelve-help.html

我可以通过bzr shelve

来搁置
  1. 我可以将搁架设置为名称,因为我看到它有ID吗?例如bzr shelve "this is my first attempt"
  2. 如何查看所有货架集?
  3. 如何查看特定货架集的具体更改
  4. 是否搁置相对于我所在的存储库?

1 个答案:

答案 0 :(得分:3)

首先,让我们创建一个共享存储库并获取一个样本分支来玩:

$ bzr init-repo /tmp/shared-repo
Shared repository with trees (format: 2a)
Location:
  shared repository: /tmp/shared-repo
$ cd /tmp/shared-repo
$ bzr branch lp:~bzrbook/bzrbook-examples/shelving
Branched 6 revisions.
$ cd shelving

您的问题:

  

我可以将搁架设置为名称,因为我看到它有ID吗?例如bzr搁置"这是我的第一次尝试"

是的,使用-m标志,例如:

$ date >> menu.txt
$ bzr shelve -m 'menu change' --all
Selected changes:
 M  menu.txt
Changes shelved with id "1".
  

如何查看所有搁架集?

使用--list标志,例如:

$ bzr shelve --list
  1: menu change

现在你可以看到为货架命名了。如果我们没有给出一个名字:

$ bzr rm guests.txt
deleted guests.txt
$ bzr shelve --all
Selected changes:
+N  guests.txt
Changes shelved with id "2".
$ bzr shelve --list
  2: <no message>
  1: menu change

顺便说一下,当你有货架时,bzr status命令告诉你它们,以及如何列出:

$ bzr st
2 shelves exist. See "bzr shelve --list" for details.
  

如何查看特定货架集的具体更改

使用bzr unshelve --preview,例如:

$ bzr unshelve --preview 1
Using changes with id "1".
Message: menu change
 M  menu.txt
=== modified file 'menu.txt'
--- a/menu.txt  2014-04-11 05:34:17 +0000
+++ b/menu.txt  2014-04-11 05:37:55 +0000
@@ -16,3 +16,4 @@
 Mixed burrito
 Onion soup
 Tacoz
+Fri Apr 11 07:34:13 CEST 2014
  

搁架是否相对于我所在的存储库?

货架集保存在工作树中。它们不是存储库的一部分,换句话说它们不受版本控制。如果删除创建货架的分支的工作目录,它们将丢失。这在bzr shelve -h中的说明的第一段以及您包含的链接中提及。