2012-12-09 7 views
7

私は最近、私が作業を始めたプロジェクトでgitに紹介されました。Scott Chaconのオンライン版「Pro Git」を読むことを奨励しました。「git remote add」は正確に何をしますか?

「リモートリポジトリ」の追加の対象を簡単に触れるセクションがあります。 Gitは分散SCMであるため、GITを使用する一般的な状況は、ローカルマシン上のリモートリポジトリを "複製"してローカルコピーで作業することです。変更が完了し、ローカルコピーのすべての変更をコミットすると、変更内容をリモートリポジトリに「プッシュ」して、他のユーザーも変更を表示できるようにします。

私が理解したところから、 "git remote add"は、後で使うことができる簡略表記法としてリモートリポジトリを効果的に追加します。私が理解できないことは、リポジトリのURLを1つだけ指定してクローンを作成するので、ローカルプロジェクトのディレクトリの下に複数のリポジトリURLを追加するにはどうすればいいですか?

正確には、私は

git clone git://git.apache.org/commons-lang.git 

を使用してApache Commonsの-LANGプロジェクトをチェックアウトすると仮定これは、「コモンズ・ラング」という名前の私のローカルディレクトリにプロジェクト全体にわたるGITのコピーになります。私はクローン作成に1つのURLしか使用していないので、ここでは「リモートアドイン」とは何を意味していますか?同じプロジェクト(コモンズラン)が複数のサーバーでホストされている可能性がありますか、新しいリモートアドレスを追加してローカルプロジェクト内で新しいプロジェクトをクローンすることができますか?

質問の初心者のような音色のためのお詫び。私の事実をまっすぐに死なせようとするだけです。ありがとう。

答えて

13

git remote add(「Git Basics - Working with Remotes」から)で必要な上流のRepoアドレスをいくつでも追加できます。

クローニングすると、1つが追加されます。名前は「origin」です。

それは押し引きする出版物を紹介しますので、はい、それは、Gitリポジトリの分散性に起因して

、同じプロジェクト(コモンズ-langは)複数のサーバ上でホストされていることができることを意味していますワークフローwhich is orthogonalをマージワークフローに追加します。

ローカルプロジェクト内で新しいリモートアドレスを追加して新しいプロジェクトをクローンすることができますか?

いいえ別の上流のreposからフェッチできます。

Definition of “downstream” and “upstream”」を参照してください。 GitHubの上でフォークときgit remotes add

一つの古典的なシナリオは次のとおりです。
を参照してください "How do I merge locally a master and a fork in git?" GitHubの上であなたのフォークをクローニングする場合

remote add

  • originがあなたのために追加されます。
  • ローカルのクローンが元のリポジトリを最新の状態に保つためには、git remote add upstream https://github.com/user/reponameが必要です(最初にGitHubでフォークを作成しなければならなかった理由です)。
関連する問題