フォーク
「他人が公開しているリモートリポジトリ」を「自分のリモートリポジトリ」へリポジトリの情報をコピーしてくることを「フォーク」と言います。
クローン
次に「リモートリポジトリ」から「自分のローカルリポジトリ」にリポジトリ内容をダウンロードすることを「クローン」といいます。チームで開発する場合はまずはこの操作を行うことが多いです。
フォークとクローンの違い
フォークはリモートリポジトリをコピーする、クローンはリモートリポジトリをローカルにコピーするという違いになります。一般的にフォークはOSSの開発、クローンは一般的な社内開発等で使うことが多い機能です。
クローンは具体的に何が起きているのか?
具体的には下記2つがローカルフォルダにコピーされます。
- リモートリポジトリの.gitディレクトリ
- リモートリポジトリの管理対象ファイル
コマンド
1 |
git clone クローン用のURL |
クローン用のURLは、GitHubであれば「Clone with SSH」というUIから取得することが可能です。(事前に取得したいリポジトリに対して事前にSSH接続の設定を行なっている必要がありますが。)
「リモート名」のみを表示
1 |
git remote |
クローン後の確認
クローン後に下記コマンドを実行するとリモートリポジトリのURLを確認することができます。
1 |
git remote -v |
表示されるURLには「フェッチ用URL」と「プッシュ用URL」二つに分かれます。
リモートの詳細情報を知る。
1 |
git remote show <リモート名> |
リモート名の変更
1 |
git remote rename <旧リモート名> <新リモート名> |
リモートを削除したい場合
1 |
git remote rm <リモート名> |
リポジトリの種類
リポジトリの種類 | 説明 |
---|---|
リモートブランチ | リモートリポジトリの中にあります。originです。 |
リモート追跡ブランチ | ・ローカルリポジトリの中にあります。origin/masterです。
・リモートブランチをローカルにコピーしただけのものです。 ・読み取り専用になります。 |
ローカルブランチ | ・ローカルリポジトリの中にあります。masterです。
・普段コミットしていくブランチになります。 |
orign
git remoteコマンドを実行するとこの名前が出てきます。これは「クローン先のリモートリポジトリ」を示す単語です。実はGitは一つのローカルリポジトリに対して複数のリモートリポジトリを設定できる仕様があるので名前で識別する必要があるのです。
後から名前は変更することが可能ですが、初期値としてはこの「origin」という名前が採用されます。複数リモートリポジトリをローカルリポジトリに紐づける場合はもちろんそうですが、1:1の関係だったとしても頻繁に出てくる名前なのでしっかり理解をしましょう。
リモートリポジトリを新規追加、複数追加する。
リモートリポジトリを新規追加したり、複数プロジェクトを兼業したい場合とかに使えます。
1 |
git remote add [追加するリモート名] [リモートURL] |
新規追加する場合であれば「追加するリモート名」は「origin」とするのが普通です。
なぜoriginを使うのか?
メインのリモートリポジトリに命名するGitの慣用句になります。git cloneをした際も自動でoriginと付けられていたりします。
この記事へのコメントはありません。