8

転覆から水銀に切り替えたばかりですが、予想よりも時間がかかっていることが1つあります。ヘッドをマージします。

(subversionと比較して)2つのコミットから独立したマージを維持するという事実が大好きですが、無関係な変更のために2つのヘッドを定期的にマージすることになります。

単純なシナリオ。私もボブも最新です。私たちは両方ともデフォルト(別名メイン)ブランチで最新のリポジトリを持っており、異なるファイルで改善を行っています。

コミットすると、1つだけが中央サーバーにプッシュでき、もう1つは2つのヘッドを作成します。次に、プルして2つのヘッドを選択し、マージします(変更は異なるファイルにあるため、簡単に実行できます)。コミットしてからプッシュします。

したがって、これらの手順を実行する拡張機能はありますか?競合がない場合はマージを試行します。それ以外の場合はマージをキャンセルします。

これを自動サーバーで実行することを検討しているので、これがコマンドラインである+1と、作業コピーに触れることなくマージを実行できる場合は別の+1です。

ありがとう!


更新:
最も一般的なタスクを管理するために、いくつかのPythonスクリプトを実行することになりました(マージアップ&ビルド; 2つのヘッドをマージ)。

助けてくれてありがとう!

4

2 に答える 2

3

マージには本当に時間がかかりますか? 「関係のない変更」なら一瞬で終わりませんか?

誰かがすでに提案fetchしており、他の誰かがおそらく提案するでしょうがrebase、個人的にはマージはコーディングであると考えており、手動で行いたいと考えています。ほとんど時間がかからず、「私の FooBar 作業の途中で Jane の作業を取り込みます」のような良いメッセージを伝える機会です (fetch が提供する役に立たないコミット メッセージの代わりに)。

于 2011-03-07T04:48:40.403 に答える
3

これなら使えるはずですhg fetch。サーバーから変更をプルし、マージしてから、自動的にマージをコミットします。マージの競合についてもプロンプトが表示されます。Mercurial に含まれているので、追加するだけです

fetch =

あなたのhgrcに、そしてあなたはすべて準備ができているはずです。自動的にプッシュするわけではありませんが、とにかくそれは通常悪い考えです。通常、コードを他の人にプッシュする前に、テストを実行してマージの問題を解決する必要があります。

于 2011-03-07T03:29:02.597 に答える