2

だから、私はバザールを始めたばかりです。GUIとしてWindows用のBazaarエクスプローラーを使用しています。

変更をメールで送信する方法はわかりますが、変更ファイルを受け取ったらどうすればよいかわかりません。変更ファイルはどこに置きますか、変更をトランクにマージするにはどうすればよいですか?

マージを選択した後、変更ファイルを含むフォルダーを選択すると、選択したフォルダーがブランチではないというエラーメッセージが表示されます。変更をプルするのも同じように機能します。変更ファイルをブランチと一緒に配置しても、何も起こりません。簡単なことだと思います。

ありがとう

明確化:

プロジェクト全体の圧縮、圧縮ファイルの電子メール送信、解凍、マージについては話していません。私はここで言及されている輸出機能について話している:

http://doc.bazaar.canonical.com/explorer/en/visual-tour-windows.html#export

エクスポート機能の目的を誤解しているのかもしれません。

現在、私はプロジェクトの誰のためにもVPNを設定して、より直接的に作業できるようにすることに傾倒しています。

4

2 に答える 2

1

バグ#86420で説明されているように、場所をブランチにできない方法は複数あります。たとえば、次のようになります。

  • .bzrディレクトリなし
  • .bzrディレクトリは存在しますが、.bzr/branchディレクトリはありません

バザールが場所をブランチと見なさない理由を正確に説明すると、何が起こっているのか(そして次に診断する場所)をユーザーに説明し、また、可能性のある救済策を提案するので役立ちますより簡単に。

特に、ユーザーフィードバックを改善し、システムがユーザーに適切な救済策を提案しやすくすることで、バグ#86402を支援します。

ディレクトリはある.bzrがブランチがない場合、おそらくエラーテキストは、ユーザーbzr infoがそのディレクトリに何が含まれているのかを理解するために「」を試してみることを示唆しているはずです。

ここに、電子メールで送信された変更ファイルからマージする例があります。(コマンドラインバージョン)

# USER 1
bzr init-repository project
bzr init project/user2
bzr branch project/user2 project/user1

# USER 2
bzr init-repository project
bzr init project/user1
bzr branch project/user1 project/user2

# USER 1
cd project/user1
<do some work>
bzr commit -m "feature foo"
bzr send -o ../foo.patch # email the feature foo as it compares to the 'user2' branch

# USER 2
cd project/user2
bzr commit -m "feature bar"
bzr send -o ../bar.patch # email to USER 1
cd ../user1
bzr pull ../foo.patch
cd ../user2
bzr merge ../user1
bzr commit -m "Merge foo"

# USER 1
cd project/user2
bzr pull ../bar.patch
cd ../user1
bzr merge ../user2
...

基本的に、他のユーザーの作業として明示的にラベル付けするブランチが1つあるという考え方です。彼らがあなたに新しいマージディレクティブを送るとき、あなたは彼らのブランチのあなたのコピーに入り、そして「bzr pull」を使います。この時点で、ローカルブランチはリモートブランチの正確なミラーになっているはずです。次に、bzr merge必要に応じて、自分の作業ブランチに「」を実行します。

「」で始める理由は、「 」セットbzr branch user1 user2のデフォルトのターゲットを取得するためだけです。初めてbzr send「」ができるので、それ以降は記憶に残っていると思います。bzr send -o XXX ../userX

-o XXXまた、パッチを添付してメールプログラムを起動したい場合は、「」を使用する必要はありません。(その場合は設定する必要があると思います--mail-to。)

于 2010-02-09T07:32:52.720 に答える
1

メールのワークフローがうまくいかなくても、VPNは必要ないと思います。SFTPサーバーをセットアップし、各ユーザーに自分のリポジトリへの書き込みアクセス権を与え、他のすべてのリポジトリーへの読み取りアクセス権を与えることができるようです。次に、自分のブランチにプッシュまたはコミットして、他のすべてのブランチからプル、更新、またはマージできます。

設定方法がわからない場合は、 Launchpadでアカウントを設定して、ブランチやマージを試してみることをお勧めします。あなたとあなたのチームメイトの何人かがLaunchpadで動作する小さなデモプロジェクトを取得した後は、おそらくあなた自身のサーバーをセットアップする方が簡単でしょう。

役立つ場合は、オープンソースプロジェクトでの私のBazaarワークフローの概要を以下に示します。ブランチの設定、変更のマージ、およびマージ提案の作成について説明します。

于 2010-03-08T20:39:49.593 に答える