2010-11-30 21 views
8

私は私の(私たちの)バージョン管理ニーズにMercurialを使い始めました。私は今、フィーチャーブランチを作成する必要があるという点に着いた。しかし、今私はそれに取り組んで - 私は私の変更をプッシュしようとすると、私は新しいリモートヘッドについての警告を取得し続けます。それは愚かなことですが、結局ブランチとは何か新しいリモートヘッドが存在することを知っていますか?Mercurialでの分岐

私はブランチを作成し、この問題を起こさずにプッシュしなければなりません。

私は別々のリポジトリを使うことを考えましたが、それは特に機能ブランチのためにばかげていると感じます。

何か助けてください!

+0

http://stackoverflow.com/questions/6948574/why-is-a-new-branch-flag-neededという本質的に重複した(別の角度から) - そこにも便利な回答があります。 –

答えて

13

、うち最高のガイドスティーブLoshの「A Guide to Branching in Mercurial」があります。

Mercurialは、リモートで新しいヘッドを作成することについて常に不平を言うでしょう。新しいヘッドを作成する場合は、--forceまたは--new-branchのいずれかを使用する必要があります。

TortoiseHgを使用する場合は、WorkbenchのSynchronizeビューでも同じことができます。 Optionsをクリックし、必要に応じてAllow push of a new branchまたはForce push or pullオプションを選択します。

TortoiseHg v2.x

、これは方法です振る舞う理由はMercurialの開発者はそれをリモートで新しいヘッドを作成するために意識的な決定を作りたかったということです。通常のワークフローでは、プッシュする前に変更内容をマージする必要があるという見方があります。

+0

TortoiseHGの '--new-branch'と同等のアクションは何ですか、私はコマンドラインを頻繁に使用しません。推論のために+1 – Tower

+0

+1。それは少なくとも実際の答えと同じくらい有益です。 – grossvogel

+0

@rファクター:TortoiseHgの注釈を含めるために私の答えを更新しました。 –

3

ジョエル・スポルスキーによるこのチュートリアルは、私が水銀で始めたばかりのときに役立ちました。それは同様にあなたのために役立つかもしれません。これまでに

http://hginit.com/