以 language-selector 為例,並且參考先前的介紹來建立 Shared repository
$ bzr init-repo language-selector $ cd language-selector一般來說,想要拿到 Ubuntu 上面的最新開發中的版本,可以使用:
$ bzr branch lp:ubuntu/language-selector trunk如果想要拿到 Ubuntu maverick 上面的開發版本就應該使用:
$ bzr branch lp:ubuntu/maverick/language-selector maverick如果想要知道目前 Ubuntu 上面有哪些官方的開發版本的話可以使用 devscripts 套件中的 rmadison 來查詢
$ rmadison language-selector language-selector | 0.1.20 | dapper | source, all language-selector | 0.1.20.1 | dapper-updates | source, all language-selector | 0.3.4 | hardy | source, all language-selector | 0.4.18 | karmic | source, all language-selector | 0.5.7 | lucid | source, all language-selector | 0.5.8 | lucid-updates | source, all language-selector | 0.5.8+langfixes~lucid1 | lucid-backports | source, all language-selector | 0.6.6 | maverick | source, all language-selector | 0.6.6+langfixes~maverick1 | maverick-backports | source, all language-selector | 0.31 | natty | source, all假設想要使用 maverick-backports 當中的版本就可以使用:
$ bzr branch lp:ubuntu/maverick-backports/language-selector maverick-backports
另外,除了可以使用 `bzr branch` 之外,還可以使用 `bzr checkout` 來取得原始碼。
使用 `bzr branch` 在 `bzr commit` 後,還要再使用 `bzr push` 來將變動的部份提交到遠端的 Bazaar Repository 上面;
而使用 `bzr checkout` 的話,在 `bzr commit` 的同時就會自動提交到遠端的 Bazaar Repository 上。
無論是使用 `bzr branch` 還是 `bzr checkout` 都會將完整的變動歷史資料下載到本地端,如果想要像 Subversion 那樣只會取得最新的一筆資料可以使用 `bzr checkout --lightweight` 來取得原始碼。
想要知道目前處於哪一種模式 (branch/checkout/lightweight-checkout) 可以在該目錄下面執行
$ bzr info如果是 lightwieght checkout 的話,應該會看到 `light checkout root`
如果是 checkout 的話,應該會看到 `repository checkout root`
如果上面兩個都沒有看到的話應該就是 branch 了
最後,如果想要在 branch 與 checkout 之間切換的話,就要使用 `bzr bind/unbind`
參考資料:
http://wiki.inkscape.org/wiki/index.php/Working_with_Bazaar
https://wiki.ubuntu.com/DistributedDevelopment/Documentation/GettingTheSource