0

いくつかのガイドやチュートリアルを見ても、Mercurial を使いこなすのに苦労しています。(コマンド ライン引数が表示されるとすぐにパニックになることは役に立ちません)。誰かがこれらの非常に基本的な質問で私を助けてくれれば、本当に感謝しています:/

やりたいこと: - 既存のプロジェクトのコピーを取得します。(このコピーを「マイ」プロジェクトと呼び、既存のプロジェクトを「メイン」プロジェクトと呼びます)。- 次に、現在のプロジェクトに変更を加えます。メイン プロジェクトにはアップロードしませんが、メイン プロジェクトに変更がある場合は、それらを自分のプロジェクトに統合したいと考えています。- 複数のコンピューターから自分のプロジェクトで作業できるようにしたいので、ローカルだけではできません。- この写真だと思います: 「私の」コード (緑のバージョン) を使用して、赤のバージョンにアクセスしながら、さまざまなコンピューターであらゆる種類のたわごとを実行したいと考えています。他の誰も私のグリーン バージョンにアクセスできない場所が望ましいです。

分岐例

私がすべきだと思うこと: - 既存のプロジェクトから複製します。後の更新を自分のブランチに統合できるはずですよね? - どういうわけか、そのクローンをどこかに保存して、それがまだメイン プロジェクトに関連していることを認識できるようにします...

TL;DR: 私の質問は次のとおりだと思います: どうすれば更新を受け取ることができるオンライン ブランチを作成できますか?

4

1 に答える 1

2

異なるクローンで作業する

最初に機能のクローンを作成し、いくつかの変更を行います

$ hg clone project feature1
$ cd feature1
$ hg update 3
$ echo 'print("Hello feature1")' > hello.py
$ hg commit -m "Greet feature1"

コミットする前に diff を使用できるのと同じように、feature1 からプルしたときに何が入るかを確認します。引っ張るためのそれぞれのコマンドが入っています

$ cd ../project
$ hg incoming ../feature1

注: 差分を確認したい場合は、リポジトリの変更に対して hg log --patch を使用するのと同じように、hg incoming --patch を使用できます。

変更が気に入ったら、それらをプロジェクトに取り込みます

$ hg pull ../feature1

編集:

Mercurial では、各リポジトリは自己完結型です。リポジトリを複製すると、新しいリポジトリは複製時に既存のリポジトリの正確なコピーになりますが、プルまたはプッシュによって明示的に転送しない限り、いずれかのその後の変更はもう一方に表示されません。

マーキュリアルガイドより。

于 2012-08-30T09:05:01.537 に答える