2012-05-03 13 views
8

私はMercurialが新しく、私はStable/Defaultブランチシステムを使用しています。私たちは皆ここにWindowsを持っています。私はこのシステムで他の誰もが働くようにしています。私たちはすべてTortoiseHgを使用しています。私は変更をマージして安定版とタグリリースにする方法を文書化しようとしていますが、私はMercurialを約3週間しか使用していないので、これを正しく実行しているかどうかはわかりません。また、TortoiseHgには、コマンドラインから利用可能ないくつかのオプションがないようです。しかし、私はWindowsシェルからこの作業を行う必要があります、またはここで採用されません。これは正しいですか? TortoiseHgを使用したMercurialの安定したブランチとデフォルトのブランチのマージ

プログラミング作業はすべてデフォルトで行われ、安定版ブランチはソフトウェアのリリースでのみ使用されます。私が何か間違っていると信じさせる一つのことは、すべてのマージの後、安定した支店を作り直さなければならないということです。それは普通ですか?直観に反しているようだ。

以下は、私が書いた手順です。私の馬鹿馬鹿を指摘したり、質問をしてください。また、事前にコメントしていただきありがとうございます。

ノートパソコンには、プロジェクトごとに2つのディレクトリがあります。 develのディレクトリは、デフォルトブランチのクローン、

===============

枝をマージし、安定したリリースを作成し、TortoiseHgの

を保存します - develリポジトリにコミットします。

- develローカルディレクトリを開きます。

- HgWorkbenchを起動します。

- 安定版ブランチの最新の安定版をクリックします。

- 同期すると、リモートリポジトリに変更をプッシュ - ローカル...

とマージ]を選択します。

- ローカルの安定版リポジトリに移動します。

- リモートリポジトリと同期してプルします。

- 最新のデフォルトブランチに更新します。 「ヒントへの更新」を選択するのが最適です。

- TortoiseHg - > commit。 "stable"ブランチにコミットする新しいブランチを再作成する必要があります。それが尋ねられたら、 "Restart branch"を選択します。

- HgWorkbenchを開き、最新の安定版用のタグを追加します。例 "Version X.X"

- 同期してリモートリポジトリにプッシュします。 [同期]ダイアログボックスの[オプション]ボタンを使用して、[同期オプション]ダイアログを表示します。 「ブランチ」と表示されたボトムフィールドに「安定」と入力します

- ローカルのdevelリポジトリに戻ります。

- リモートリポジトリと同期してプルします。 [同期]ダイアログボックスの[オプション]ボタンを使用して、[同期オプション]ダイアログを表示します。 「ブランチ」というボトムフィールドに、フィールドが空白であることを確認します。それ以外の場合は、デフォルトで「stable」ブランチになります。

答えて

6

2番目のクローンが必要なものを達成する必要はなく、必要がない場合は複雑になります。

これは私がやるだろうと何である:

  1. リポジトリ
  2. の単一のクローンがdefault
  3. スタートHgWorkbench
  4. にコミットしまし右stableブランチの最新チェンジセットをクリックしてください
  5. ポップアップメニューでUpdate...を選択し、ポップアップウィンドウのUpdateボタンを押しますEデフォルトのオプション)
  6. は右default
  7. で最新のチェンジセットをクリックして作業ディレクトリの状態がきれいであることが示された場合(それがあるべき)Merge with local...
  8. を選択してあった場合、Nextボタン
  9. をクリックしてください何のマージの競合が再び
  10. がコミットメッセージを入力しNextボタンをクリックして、次のステップにCommitボタンを押しFinishをクリックします(あなたがstableには発展しない場合があってはならない、再び)ではない
  11. stableブランチの最後のチェンジセットを右クリックし、Tag...を選択し、タグ名を入力してAddボタンを押します。
  12. defaultブランチの最後のチェンジセットをクリックして、再びデフォルトのオプションを使用して

Update...を選択してくださいあなたは今、タグ付けされたstable支店を持って、開発を継続するために戻ってdefault枝にあるきました。新しいstableバージョンをリリースする準備ができたら、上記の手順3からの手順を繰り返します。

+0

これははるかにクリーンな音です。私は朝にそれを試してみるつもりです。どうもありがとうございます! – user1372617

+0

フォローアップ:それは完全に働いた。どうもありがとう! – user1372617

関連する問題