bzr vs git

since 2010-12-18

bazaargit の違いについて考える。

http://doc.bazaar.canonical.com/migration/en/survival/bzr-for-git-users.html

に基づいて考察。

  • 西本注:git では clone でリポジトリを複製できる。リポジトリの中で git checkout -b すると「同じリポジトリの中で複数の作業ブランチ」を切り替えることができる。作業ファイルの path を固定したまま複数のファイル状態を使い分けられるので便利(だが混乱しやすいかも)

Create a new project

To create a standalone branch looks very similar to git:

$ bzr init myproject
  • 西本注:これは git あるいは mercurial っぽい使い方。

However, to create the recommended Bazaar repository/branch structure is slightly more complex:

  • 西本注:と書かれているので以下ではこのやり方を検討する
$ bzr init-repo myproject
$ cd myproject
$ bzr init trunk
  • 西本注:これをやると myproject/trunk ディレクトリができる。その中で bzr add, bzr commit する
## by nishimotz
$ cd trunk
$ echo "hello" > hello.txt
$ bzr add hello.txt
$ bzr commit -m "initial"

Clone a branch

Creating a copy of a branch (whether a clone of a remote branch, or a branch of a local one) is similar to git, but using the branch command rather than clone (for convenience “clone” is aliased to “branch”):

$ cd ..     # operate on branches from the shared repository
$ bzr branch trunk feature-a
  • 西本注:これをやる前はカレントには trunk ディレクトリがあった。実行後は trunk と feature-a の2つのディレクトリ。そしてよく見ると .bzr も隠れている。つまり .bzr は3箇所にできる。

以下は Windows での bzr info の実行結果。

myproject は shared repository となっており、trunk と feature-a が myproject を共有している。そして feature-a の parent は trunk になっている。

C:\work\_bzr\myproject>bzr info
Shared repository with trees (format: 2a)
Location:
  shared repository: .

C:\work\_bzr\myproject>cd trunk

C:\work\_bzr\myproject\trunk>bzr info
Repository tree (format: 2a)
Location:
  shared repository: C:/work/_bzr/myproject
  repository branch: .

C:\work\_bzr\myproject\trunk>cd ..

C:\work\_bzr\myproject>cd feature-a

C:\work\_bzr\myproject\feature-a>bzr info
Repository tree (format: 2a)
Location:
  shared repository: C:/work/_bzr/myproject
  repository branch: .

Related branches:
  parent branch: C:/work/_bzr/myproject/trunk

bzr-vs-git.txt · 最終更新: 2010/12/18 10:52 by Takuya Nishimoto
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0