2

私は最近、分散バージョン管理を把握するために Git をいじっています。今、私は Bazaar を見ていますが、ローカル ブランチ、つまり、変更をコミットしたいときにプッシュする必要のないブランチを作成する方法がわかりません。Git なら、

git branch branch_name

また

git checkout -b branch_name

その後、変更をリモート リポジトリにプッシュすることなく、ローカル ブランチで作業し、変更をコミットできます。ブランチが完成したら、それをローカルの master ブランチにマージできます。必要に応じて、これらの変更をリモート リポジトリにプッシュできます。

これはBazaarで可能ですか?Bazaar は SVN にかなり似ており、ブランチは別々のディレクトリになっているだけなので、そうではないかもしれません。

4

4 に答える 4

4

はい、あなたは間違いなくそれを行うことができます。

bzr +ssh://foo.com/repo/mainlineにリモートリポジトリがあるとしましょう

次の手順でローカルブランチを作成できます。

bzr branch bzr+ssh://foo.com/repo/mainline local_branch

これで、local_branchに変更を加えてコミットすることができ、それらの変更はそのローカルディレクトリにのみ存在します。例えば:

cd local_branch
touch foo
bzr add foo
bzr commit -m "Add foo."

これにより、ローカルブランチにのみfooが追加されます。

于 2009-10-29T18:34:31.217 に答える
3

リポジトリを正しい方法でセットアップすれば、git と同様の方法で作業できます。

cd ~/dev
bzr init-repo
bzr reconfigure --with-no-trees
mkdir branches
bzr branch bzr+ssh://foo.com/repo branches/mainline
bzr checkout --lightweight branches/mainline working

これにより、次のような構造が作成されます。

/dev
    /branches
        /mainline
        <other branches go here>
    /working
        <this is your working tree>

ブランチを作成する場合は、次のようにします。

cd ~/dev/checkout
bzr branch --switch ~/dev/branches/mainline ~/dev/branches/some-feature

some-featureこれで、メインラインと同じポイントにあるブランチになります。

于 2009-12-15T21:14:11.110 に答える
2

古い質問ですが、最近ではコロケーション ブランチが適しているようです。Bzr には、コロケーション ブランチ対応のリポジトリを作成したり、実際にブランチを使用/作成したりするためのさまざまな便利な機能を備えたプラグインが含まれています (これらの機能をまだ広範囲に使用していないため、少し混乱している可能性があります..)colo-initcolo-branch

于 2012-10-06T19:05:28.723 に答える
1

bzr は、作業ディレクトリによって表されるブランチを切り替えることができないという点で git とは異なります。ただし、リモート リポジトリから分岐する代わりに、作業ディレクトリから分岐することができます。だから代わりに

git clone git+ssh://foo.com/repo
cd repo
git checkout -b new_branch

あなたがするだろう

bzr branch bzr+ssh://foo.com/repo
bzr branch repo new_branch
于 2009-10-29T18:52:47.740 に答える