2009-06-18 13 views

答えて

22

私はあなたにもBazaar vs. Git記事を読むが、最終的に、それはすべてあなた「は、豊富な機能を備えたコード管理」の項に探しているものにダウンしていたとし。

  • コード管理によって、あなたはファイル(およびディレクトリや名前の変更)を参照している、場合、バザールで行きます。 、コード管理によって、あなたはコンテンツ管理を見ている場合は、Gitには(ステージング領域をちょうどそれを管理するように設計されて

  • 、たとえば、あなたも、あなたがコミットしたい現在何コンテンツを記録することができますすでにいくつかの大規模な変更を行うために始めているのに、あなたは)

は確かに、戻って2005年4月のGitリポジトリ(のためのLinus's original visionを再読み込み)現在のブランチにコミットしたくない終わります。あなたがそれに同意するならば、あなたが望むものをGitが提供する可能性があります。

  • 非常に単純なモデル(ブロブツリーコミットタグ)
  • 何のメタデータが追加されない(例えばリネーム追跡するため)
  • のような "強い" の原則:要するに
    • 「ファイル」は関係ありません。唯一の問題はどのようにあなたは本当に重要唯一のレベル、すなわち、プロジェクト全体で変更点を追跡SCMを持っている木
    • に移動し、「コンテンツ」。情報のどれが実際に小さい粒度で全く意味がありません、定義によって以来、「プロジェクトは」他のファイルに依存し、またはそれは

「そのプロジェクトではありませんすべてのプロジェクト」という概念は、プロジェクト管理の項にGitのために実際に強度a limitです:あなたは Gitのリポジトリにすべてを入れしようとはなりません。

+4

「ファイル」と「コンテンツ」の違いを正確にはわかりません。 Bazaarはすでに、ブランチにコミットしたいファイルをチェリーピックすることができるので、ステージングエリアを持つことによって何が得られるのか分かりません。私はあなたがファイル情報をどのように追跡できないかを見ていません。たとえば、Javaでは、すべてのファイルに正しい名前が付いていることを確認する必要がありますが、プロジェクトの内容に関係なく重要です。私が "ファイル"管理を考えるとき、私はソースセーフとcvsのファイルごとのバージョン管理を考えています。バザーは決してそうではありません。 – FryGuy

+1

@FryGuy:この答えはもう少し明白かもしれません:http://stackoverflow.com/questions/995636/popularity-of-git-mercurial-bazaar-vs-which-to-recommend/995799#995799 – VonC

+0

@ FryGuy:gitはファイル全体の変更を検出できます。たとえば、2つの関数を持つ1つのファイルがあり、2つの関数に分割されているとします。名前の変更を使用してこれを追跡することはできません。 Gitと名前の変更の検出はこれを行うことができ、私の意見ではうまくいきます(しかし、遅いです - 他のgit操作に比べて非常に遅いです。大きなファイルの場合は最大10-15秒かかります)。私はここに例があります:http://cournape.wordpress.com/2009/05/12/why-people-should-stop-talking-about-git-speed/ 私には、この+安い枝は2つです他のツールと比較してgitのキラー機能 –

12

これは、個人的な好み、単純で簡単です。

私はBazaarを使用しており、非常に簡単です。ステージングは​​Gitのコンセプトですが、柔軟性がありますが、複雑さも増しています。 Bazaarのコードを4つのコマンド(add、commit、merge(push/pull)、logまたはqlog)で簡単に管理できます。複数のブランチが必要な場合にのみマージする必要があります。

通常、バザールは正しいことをしているようです。私は本当に愚かな何かをしたり、私が何かばかげたことをさせることにそれほど問題はなかった。

9

私はそれがあなたの個人的な好みに依存すると思う - それらの両方のための議論がある。私は個人的なプロジェクトのためにbzrを数年間使ってきました.0.8日からですが、昨年はgitに切り替えていました。

私はimpression自分自身を書き換えするのが面倒ですが、それを合計する:あなたは任意のドキュメントwoのツールを与えられている場合

  • bzrが(
  • のbzrがより見つけているプラ​​ットフォーム間でより一貫して動作しますが、任意の半有能なユーザーは、Gitは
  • Gitは非常にある(パイプ)は、UNIXのように拡張することが容易であることが
  • のbzrは、APIの方法で拡張する方が簡単です)gitのとそれほど真実ではない、のbzrを使用することができますより強力なIMHO;特に、リネーム処理やコンテンツトラッキングに対するアプローチが多くのケースで正しいと確信しています
  • bzr revnoシステムは良くありませんIMHO。よりシンプルに見えますが、多くのブランチを持ち始めてメインラインを変更すると深く混乱します。
1

Gitがしていることの一つは、たくさんのブランチを扱うことです。それはbzrよりはるかに高速であり、ソースコードの複数のコピーを必要としません。すべてのブランチは同じディレクトリ内にあります。私は自分のリポジトリが小さくなく、バイナリファイル(合計180MB)も含んでいるので、私がbzrとやりとりしたよりもはるかに頻繁にgitブランチを使用しています。

EDIT:実際は、私は間違っています。 --no-trees +軽量チェックアウトはGitのように機能します。ありがとう、FryGuy。 ああ、便利な情報を持っているthis blog entryが見つかりました。

+0

バザーで同じワークフローを達成できます。これは、私が好きな機能の1つです。あなたが望むワークフローを使うことができます。 --no-treeブランチ、--lightweight checkouts、ブランチ間の 'bzr switch '(ディスク上のフォルダとして)を参照してください。 – FryGuy

+0

まだブランチごとに1つずつ、ソースコードのコピーが複数あるので、同じワークフローですが、同じアプローチではありません。とにかく、bzrを使うときは、積み重ねた枝を使うべきです。軽量のチェックアウトよりも優れています。 –

+5

いいえ、あなたはソースコードの複数のコピーを持っていません。それが「無木」のことです。私の現在のプロジェクトには70以上のブランチがあり、ハードドライブにはソースコードのコピーが1つしかありません(バザールを使用する前に、少なくともバザーではいくつかのスナップショットがあります)。私の.bzrフォルダは〜190メガで、私のソースツリーは1.76ギグですので、複数回そこにいたら気づくでしょう。 – FryGuy

1

バザールはubuntuと非常によく似ています。私は長年にわたってubuntuを使っていますが、他の奇妙なディストリビューションに切り替えるのは飽きますが、何のポイントもありません。私はgit/mercurial coz bazaarよりバザーを選びます。通知はUbuntuに非常によく統合されています。さらに、あなたはLaunchpadから大きなホスティングを無料で手に入れることができます。

+0

GitHubなどから無料のGitホスティングを手に入れることができるので、プラスではありません。 –

7

バザールの開発が停止しました。最後のリリースは2013-08-04の2.6です。

バージョン管理を開始している場合は、アクティブなもの(おそらくこれはGitまたはMercurialになりそうです)を考慮する必要があります。

編集1:2.7よりリリースが投稿されましたが、プロジェクトが本質的に〜10コミット/年で死んでいるという事実は変わりません。

編集2:バザーより多くのアクティビティを持つBreezyと呼ばれるバザーのフォークが追加されました。私はこれが本当に活発なプロジェクトになるとは思っていませんが、少なくともこれはツールが維持されていることを意味しています(例えばPython 2の終わりから生き残る必要があります。

+0

それはもう一度開発されているようだhttp://doc.bazaar.canonical.com/beta/en/whats-new/whats-new-in-2.7.html – skan

+0

最新リリース、1年間の話をするリンク前。 2017年に3件、まだ2018年にコミットされていない(http://bazaar.launchpad.net/~bzr-pqm/bzr/bzr.dev/changes/)。私はこの積極的なメンテナンスと呼んでいません;-)。 Breezy OTOHは適度にアクティブであるようです(ただし、hgやgitに匹敵するアクティビティではありません)。 –

1

git vs bzr/hgを使用する最善の理由は、githubが岩であるためです。ランチパッドはOKですが、githubは検索、ソーシャル、スタイルを正しく取得できます。

技術的なローンチパッドは、おそらく多くの点で優れています。マージ、統合ビルドシステム、およびその他の機能は、多くの人にとってランチパッドを魅力的にします。 githubの内蔵エディタ、要点...そこには、ランチパッドにはないフローがあります。視覚的に、社会的に、競争はない。

関連する問題