1

私が働いている場所では、(ほとんど) ペアで仕事をしています。私たちはバージョン管理の必要性を認識しており、明らかに柔軟性があるため、分散型バージョン管理システムとして bazaar を使用します。

いくつかの実験の後、プロジェクトをセットアップするには、次の手順を使用する必要があることに同意しました。

サーバー上

  1. bzr init (プロジェクトを初期化します)
  2. bzr add (現在のディレクトリ内のすべてのファイルを追跡するよう bzr に指示するため、このコマンドを実行する前に、プロジェクト スケルトンに不要なファイルがないことを確認してください)
  3. bzr commit -m "initial commit" (バージョン管理のために、追加されたファイルを bzr にコミットします)

開発機について

  1. ローカル マシンで、bzr ブランチを実行します。 project_dir

日課

私たちは現在、私たちのために働くワークフローを確立しようとしています. これは、私たちが毎日行うことに同意したことです。

  1. から最新の変更をプルダウンpull_path
  2. コーディングしてコミットします。注意。コミットはローカル マシンに保存されます。
  3. 手順 1 を参照してください。
  4. push_path変更を(NB. push_path= pull_path)にプッシュします。
  5. 競合がある場合:
    • 最初にbzr resolve を試してください。
    • それでも問題が解決しない場合は、パートナーに連絡して手動で解決してください (file.OTHER、file.BASE、file.THIS を開き、関連する変更を加えます)。
    • 変更をコミットします ( bzr commit )
    • もう一度押す ( bzr push )
    • すべての競合が解決されるまで、上記のサブポイント (#5) を繰り返します。

ワークフローに関して、これは bazaar でバージョン管理を行う正しい方法ですか? 他のチーム メンバーが変更をサーバーにプッシュするたびに、コミット コメントが「所有権を変更する」という問題が発生しました。これは想定どおりの動作ではないと確信していますが、プロジェクトのセットアップ段階で選択した特定のオプションが原因である可能性もあります。

ここの VCS エバンジェリストとして、私はチームによって、特にチームが成長するにつれて新しい人々によって使用されるガイドに取り組んでいます。bzr を最大限に活用するための、素晴らしくシンプルなステップバイステップのフローを確立するためのあなたの貢献は、非常に高く評価されます。ここにあなたの貢献を追加してください。

よろしくお願いします:)

4

2 に答える 2

2

サーバーと開発マシンで実行しているオペレーティング システムは何ですか? そしてファイルシステム?Windows ファイル システムのパーミッションと、場合によっては所有者/グループが、UNIX ファイル システム上の同じファイルと異なる場合があります。それが最初の障害になるかもしれません。

Bazaar ワークフロー:

レポ サーバーでメイン ツリーを実行し、ローカルでチェックアウトします。

bzr checkout sftp://path/to/repo/project /var/source/project

チェックアウトをローカル/開発環境に分岐します。

bzr branch sftp://path/to/repo /var/www/project

チェックアウトでは作業しないでください。dev ブランチでのみ作業してください。さまざまな bzr コマンドを使用して、そこで作業およびコミットします。

作業モジュール / バグ修正 / タスクが完了したら、メイン リポジトリに (プッシュではなく) マージします。

//In /var/source/project
bzr merge /var/www/project
//Resolve any conflicts
bzr resolve
//Commit the merge
bzr commit -m "Work module | task | bug fixed"

/var/source/project はチェックアウトであるため、リポジトリ サーバー上のリポジトリは自動的に更新されます。これにより、2 人以上の開発者が同じプロジェクトで同時に作業できるようになり、ずっとプッシュとプルを行う必要がなくなります。

于 2011-02-22T07:54:59.760 に答える
0

あなたのコミットメッセージがどのように所有権を変更するのかわかりません。マージしてコミットすると、新しいコミットはマージを行った人の名前になりますが、元のコミットは引き続き追跡されます。見るbzr log -n0

于 2011-02-19T19:58:24.437 に答える