はじめに
はじめましてa-min3150です。エンジニアへの転職を目標に学習中です。
アウトプットのためEnvaderで学習したこと、ハマったことなどを書いていきたいと思います。
今回の学習内容
EnvaderでPythonの環境構築について学習したのでアウトプットします。
今回は第7回目(最終回)でmacOSでのgit clone
の使い方についてです。
第1回(Pythonとは)はこちら
第2回(pyenvについて)はこちら
第3回(pipについて)はこちら
第4回(venvについて)はこちら
第5回(virtualenvについて)はこちら
第6回(requirements.txtの使い方)はこちら
git cloneとは?
cloneコマンド
とは同じものを複製することができるコマンドです。指定したディレクトリに元のリポジトリと同じものを複製することができます。Githubなどからソースコードをコピーしてきたいときなどに使用されます。
git clone
は、gitからソースコードを複製することができるコマンドです。複数人で開発するときなどに各々が自分のローカルリポジトリにコピーして作業したいときなどに利用します。このようにすることで、何かしらのトラブルが発生した場合にも、元のリポジトリがあるため、元の状態に復元することができます。
基本的な使い方
git cloneの後にリポジトリのURLとソースコードを複製するディレクトリを指定して実行します。複製するディレクトリを指定しなかった場合はカレントディレクトリ内に複製されることになります。
$ git clone リポジトリURL ディレクトリ
複製するディレクトリを指定しなかった場合はカレントディレクトリ内に複製されることになります。
$ git clone リポジトリURL
カレントディレクトリ内に複製
通信方式
また、リポジトリをクローンするする時にも通信方式があり、http方式、git方式、ssh方式などがあります。
それぞれ git clone の後に 通信方式:リポジトリURLとするだけで通信方式を指定することができます。
http方式
http方式は、通信速度が早く高速で通信したいときに使われます。
$ git clone http:リポジトリURL ディレクトリ
git方式
git方式はさらに高速で通信することができます。しかし、認証部分が暗号化されなかったり、クローンしたものを参照することしかできません。取得したいだけ、pushする必要がない時におすすめです。
$ git clone git:リポジトリURL ディレクトリ
ssh方式
ssh方式は開発現場で使われることが多く。認証部分を含めたネットワーク上のすべての通信が暗号化されるので、安全に通信することができます。しかし、通信速度が早くないため巨大なリポジトリだとかなりの時間がかかってしまいます。
$ git clone ssh:リポジトリURL ディレクトリ
リモートリポジトリをクローンする時
リモートリポジトリをクローンする時はリモートリポジトリのURLを指定してあげれば大丈夫です
$ git clone リモートリポジトリURL ディレクトリ
リモートリポジトリの場所を確認
リモートリポジトリがネットワーク上のどこに存在するのか調べたいときは git remote -v
を実行します。実行することでリモートリポジトリの場所を確認することができます。
$ git remote -v
origin リモートリポジトリのURL
git cloneしたPythonを実行してみる。
Desktop上に作成した「test_gitclone」というディレクトリに移動します。
そこで下記のコードを実行します。これは私のGitHubでpublicで公開している「test_repository」という名前のリモートリポジトリを複製(clone)して自身のPCへダウンロードしてきています
macOS:test_gitclone user$ git clone https://github.com/a-min3150/test_repository.git
Cloning into 'test_repository'...
remote: Enumerating objects: 6, done.
remote: Counting objects: 100% (6/6), done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 6 (delta 0), reused 6 (delta 0), pack-reused 0
Receiving objects: 100% (6/6), done.
git cloneで複製してきた、「test_repository」ディレクトリが作成されていることがわかります。
macOS:test_gitclone user$ ls
test_repository
そこに移動してディレクトリの中身を確認します。
「Hello.py」と「README.md」というファイルがあることがわかります。
macOS:test_gitclone user$ cd test_repository/
macOS:test_repository user$ ls
Hello.py README.md
Hello.py
ファイルを実行してみる。
macOS:test_repository user$ python Hello.py
Hello world
Hello.py
が実行されて、ターミナルに「Hello world」が出力されました。
このような手順でgit clone
は使われ、チーム開発で環境を揃えるのに使われたりします。
まとめ
今回はgit clone
について解説しました。
複数人で開発するときに必ずといっていいほど使います。
$ git clone リポジトリURL
開発で絶対に使うコマンドなので簡単な使い方だけでも覚えておきましょう。
今回で最終回となります。
最後までお読みいただきありがとうございました。
引用サイト
- Envader(エンベーダー):https://envader.plus/
- コース一覧:https://envader.plus/course
- Python環境構築コース:https://envader.plus/course/8
- 今回解説したコースシナリオ:https://envader.plus/course/8/scenario/1077