2012-02-29 7 views
0

私は毎日gitについて学んでいるので、いくつか質問があります。私は2つのリモートgit reposそれぞれに独自の構造体を持っていますが、両方とも 'origin/dev'を持っています。私は私の地元にそれぞれのレポで次のように使用してチェックアウトする場合:同じディレクトリ構造を持つローカルディレクトリ内の複数のリモートgitリポジィ

のProject1:

git checkout -b dev origin/dev 

のProject2:

git checkout -b dev origin/dev 

は私がProject1のからファイルを持つことができ、シナリオに実行でき、 Project2は同じローカルの 'dev'ディレクトリにありますか?これの最善の方法は何ですか?

+0

私はかなり理解していません。 "Project1"と "Project2"は別々のディレクトリですか? "dev"ディレクトリはどこですか? –

答えて

1

2つのレポのこれらの異なるプロジェクトはありますか?その後、マシン上の各プロジェクトに別のフォルダを使用している限り、正常に動作するはずです。あなたのマシンとタイピングの各フォルダに行くことによってこれを確認することができます

git remote -v 

は限り originのURLは、あなたがにしているプロジェクトに一致するとして、あなたは大丈夫です。

同じプロジェクトで2つの異なるリポジトリを使用している場合は、リモコンを2つ持つことはできません。originあなたはoriginと呼ばれる1つのリモートを持つことができますが、他のリモートレポは別のものと呼ばれる必要があります。

@triadあなたは、両方のリモートブランチからのファイルは、明示的にそれをやってなくてマージされていないだろう指摘したようにあなたはリモコン用の2つの異なる名前を持つことができると仮定すると
origin/dev 
    <other_remote>/dev  
0

あなたは彼らがあなたが多くのオプションを持っているマージしたい場合は、そのうちの二つは次のようになります。

// Option 1 
git checkout -b dev origin/dev 
git merge other_remote/dev 
// solve possible merge conflicts 
git push // this will push into origin/dev 

// Option 2 
git checkout -b dev other_remote/dev 
git merge origin/dev 
// solve possible merge conflicts 
git push // this will push into other_remote/dev 

それはあなたがDEVを作っている...

git checkout -b dev origin/dev 
// or 
git checkout --track origin/dev 

を使用していることを実現するためにも重要ですローカルブランチトラックdevリモートブランチ。 git pushまたはgit pullを実行して、プッシュまたはプルしたいリモートブランチに明示的に言及しなくても、シナリオで多くの混乱を招く可能性があります。

関連する問題