【Git入門】git cloneの使い方(既存リポジトリをコピーする)
0.はじめに
Git入門者向けに、git clone
コマンドを使って「既存リポジトリをコピーする方法」を解説します。
本記事の内容に沿って、ハンズオンいただくと以下を習得できます。
-
git clone
とは何かを理解できる - リモートリポジトリからcloneしてローカルリポジトリを作成する方法
- 正しくリポジトリをコピーできているか確認する方法
では、次の章から具体的な解説を進めます!!
1.git cloneとは?
git clone
とは、以下図のように「既存のリモートリポジトリをローカル環境に複製するコマンド」です。
git clone
を利用することで、自分の手元のマシン上にリポジトリを配置して、開発作業を行うことができるようになります。
次章でgit clone
の具体的な使い方を解説します。
2.リモートリポジトリからcloneしてローカルリポジトリを作成する
実際にリモートリポジトリから、cloneしてローカルリポジトリを作成してみましょう。
まずは、GitHub.comで、リポジトリのメインページへ移動しましょう。今回は例として、numpyのリポジトリで試していきます。
次に、右上にある「<>Code」をクリックしましょう。
リポジトリのURLをコピーします。以下いずれかのプロトコルを選択してクローンできます。どれでもいいですが、今回はGitでも推奨されているHTTPSで実施してみます。
- HTTPS:HTTPSでの転送。認証機能あり。
- SSH:SSHでの転送。認証機能あり。
- GitHub CLI:Gitのプロトコルでの転送。認証機能なし。
ご参考:Gitサーバー-プロトコル
URLをコピーしたら、ターミナルを開いてクローンしたいディレクトリに移動しましょう。今回は、Desktopにクローンすることとします。
$ cd ~/Desktop
最後に、git clone
と入力し、既にコピーしたURLを貼り付けて実行してみましょう。
$ git clone https://github.com/numpy/numpy.git
しばらくすると、クローンが終わるかと思います。
次章から、正しくクローンがされているか確認していきます。
3.ローカルリポの中身を見てみる(.gitフォルダの確認)
前章で、クローンしたnumpyのローカルリポジトリの中身を見ていきます。
まず、ls
コマンドを実行してみましょう。すると、「numpy」というディレクトリがDesktop上に作成されていることがわかります。
$ ls
numpy
$
cd
コマンドで「numpy」ディレクトリへ移動し、ls -a
コマンドを実行してみましょう。-a
は隠れファイルも表示させるオプションです。
$ cd numpy
$ ls -a
「README.md」を始め、いろいろなファイルやディレクトリが作成されていることがわかると思います。
. .clang-format .devcontainer .github .spin LICENSES_bundled.txt azure-steps-windows.yml doc meson_options.txt pytest.ini
.. .codecov.yml .editorconfig .gitignore CITATION.bib README.md benchmarks environment.yml numpy requirements
.circleci .coveragerc .git .gitmodules INSTALL.rst THANKS.txt branding meson.build pavement.py tools
.cirrus.star .ctags.d .gitattributes .mailmap LICENSE.txt azure-pipelines.yml building_with_meson.md meson_cpu pyproject.toml vendored-meson
その中の1つに、「.git」というディレクトリがあります。このフォルダにはGitが動作するために必要な情報がすべて入っています。
今回は、「.git」の中身を見ることまではしません。「.git」を操作する機会は、実際の業務でも少ないからです。
とりあえず、この「.git」があれば、このフォルダはGitのリポジトリとしてちゃんと機能するんだなと覚えておけばOKです。
次章で、今回作ったローカルリポジトリがちゃんとnumpyのリモートリポジトリと紐づいていることを確認します。
4.ローカルリポに紐づいているリモートリポのURLを確認する
最後に、今回作ったローカルリポジトリがちゃんとnumpyのリモートリポジトリと紐づいていることを確認します。
git remote -v
というコマンドで確認することができるので、「~/Desktop/numpy」上で実行してみましょう。
$ git remote -v
すると、以下のように表示されると思います。
origin https://github.com/numpy/numpy.git (fetch)
origin https://github.com/numpy/numpy.git (push)
この情報は、実際の開発中にリモートリポジトリから情報を取ってきたり(fetch)、逆にローカルリポジトリで開発した内容をリモートリポジトリへ送る(push)際に、指定する情報となります。
この情報が、リモートリポジトリからcloneしてローカルリポジトリを作成した際にコピーした、URLになっていればOKです。
5.おわりに
今回はgit clone
の理解を深めるために、以下を学びました。
-
git clone
とは何か(既存リポジトリをコピーするgitのコマンド) - リモートリポジトリからcloneしてローカルリポジトリを作成する方法(
git clone <remote_repo_url>
) - 正しくリポジトリをコピーできているか確認する方法(
git remote -v
)
一回で覚えるのは難しいと思うので、何度かトライして覚えるで全然大丈夫です。
今後もGitの基本的なワークフローについて解説していきます。
おわりっ!!
Discussion