2016-12-14 8 views
-2

私はローカルに見るファイルのバージョンに関する問い合わせを受けています。私は1つのgitリポジトリをクローンしたとしましょう。だから、特定のfile.txtはバージョンに「6」私はBRANCH1に切り替え、およびバージョン「F」に対応させていただきますfile.txtは「g​​itのプル」を実行した場合git checkoutブランチとローカルリポジトリ

1--2--3--4--5--6  --> master 
    |--A--B--C--D--E--F --> BRANCH1 
     |--X--Y  --> BRANCH2 

に対応していますか?

BRANCH2に切り替えて 'git pull'を実行すると、file.txtはバージョン 'Y'に対応しますか?

もう一度 'master'に切り替えると、バージョン '6'が表示されますか?

お知らせください。

+0

「もし私が」あなたがしたとき、それをしましたか?いくつかの[背景を読む](https://git-scm.com/book/en/v2/Getting-Started-Git-Basics)は、あなた自身で簡単に試してみることのできるものについて質問するのではなく、良い考えです。 – AD7six

答えて

0

リモートgithubの中にあなたのfile.txtの異なるバージョンを持っているので、これはマスターのために、それは、BRANCH1のは、バージョンFですが、バージョン6ですあなただけの別の支店に切り替えて実行するとBRANCH2のためにそれがとてもバージョンY.

だ、ですgit pullだから、gitは異なるブランチのために関連するバージョンを引き出すだろう。

マスターに切り替わり、git pullを使用すると、gitはmasterのfile.txtのバージョン6をgithubから取得します。

+0

"git pull"は、そうでないファイルを更新するアクションです。この答えは、git pullがブランチを切り替える代わりに、実際にファイルを更新するアクションであることを再び示唆して誤解を伝えます。より重要なのは関連しています:あなたは質問された質問に答えなかった(しかしそれは悪かった)。 – AD7six

+0

git pullは現在のローカルブランチをリモートのものに更新します。すべてのリモートブランチはfile.txtを持っているからです(あるいは、file.txtは別のバージョンを持っています)。それはポイントではありませんか? –

+0

'git pull'は' git fetch' + 'git merge'または' git rebase'です。前回のプル/フェッチ以降にリモートが更新されない限り、コミット/ブランチをチェックアウトするだけでファイルを実際に更新するステップです。最後のステップでも新しい状態をチェックアウトします。問題は混乱しています。しかしこの答えは - それはgitのsvnの理解のように読み込まれます。 – AD7six

関連する問題