PCセットアップの練習のため、一度PCを初期化しました。
ソース管理はGitHubで行っておりました。
PC初期化に伴い、リモートリポジトリはGitHub上にあるもののソースコードを編集するのに必要なローカルリポジトリがPC上に存在していない状態になってしまっています。
そこで、GitHub上にあるリモートリポジトリからローカルリポジトリをクローンする一連の流れを試したので、記事にまとめてみました。
自身が業務をする上での備忘録として活用することを目的としています。
初心者がまとめた記事なので、間違った認識をしている可能性があります。
間違い等がございましたら、ご指摘いただけると幸いです。
そもそもGitとは?
エンジニアがソース管理をするサービスの中の1つです。
ソース管理するサービスはいくつもありますが、GitHubやGitLabがメジャーのようです。
どうやってソース管理をするの?
Git上でプロジェクトを作って管理をします。
また、このプロジェクトのことをリポジトリといいます。
リポジトリにはリモートリポジトリとローカルリポジトリの2種類があります。
リモートリポジトリ・ローカルリポジトリとは?
![2019-07-16 (2).png](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F463391%2F86b200eb-0d54-1161-fba3-ee87a31c4eaa.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=f5878e9b1dd0264f6ae13a65c53f1087)
このリモートからローカルにコピーすることをクローンと呼びます。
ローカルリポジトリを作る方法
今回は既にGitHubやGitLab上でリモートリポジトリが作成されていることを前提としています。
- クローンする
クローンする際に使用するURLはGitHub上のリモートリポジトリ内にある画面右側にある緑色のボタン「Clone or download」をクリックするとURLがコピーできます。
一連のコマンドは下記の通りです。
クローンする
git clone (URL)
クローンしたリポジトリを編集してプッシュする方法
次にクローンしたリポジトリのファイルを編集したり、新しいファイルを追加したあとにリモートリポジトリにプッシュするまでの一連の流れをまとめました。
- ステータスを確認
- インデックスに追加
- コミットする
- プッシュする
ステータスを確認
git status
インデックスに追加
git add .
ステータスを確認
git status
コミットする
git commit -m '(メッセージ)'
プッシュする
git push origin master
実際の画面で見てみよう
1.クローンする
![コメント 2019-07-22 192142.png](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F463391%2Fc172bd9f-7e66-5fb2-ce74-348972ed6f1d.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=f0c139d1a2a5a7b854bdbf3880700125)
![コメント 2019-07-22 145122.png](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F463391%2F4a614ad9-ab76-1d5e-7282-e9bd655299e1.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=bfa910f8530d2e479e1102787dd0771a)
![コメント 2019-07-22 194201.png](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F463391%2Feacc15b4-96cb-df73-915e-92aad759ede5.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=f5f12350a27f81cb311fbc6a538f1f3b)
2.カレントディレクトリを移動
![コメント 2019-07-22 193313.png](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F463391%2Fcfb56ae1-3dc3-9337-9eeb-c58921caa198.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=a835e1b9fee0384c5096938eefe35c86)
2.5ファイルを編集
Git Bush上では特に操作はしません。
エディタなどでファイルの編集を行います。
3.ステータスを確認
![コメント 2019-07-22 193457.png](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F463391%2F92c87170-7a9d-b5d8-404d-2e7dae7e46ec.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=aec9ee21858f7e22a9dc46d6d24f6006)
4.インデックスに追加する
![コメント 2019-07-22 193600.png](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F463391%2Fa0a56477-25a8-e73e-b2a5-3334f0c1b664.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=1c77140715f3249ad766197781a243ba)
5.ステータスを確認する
![コメント 2019-07-22 193737.png](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F463391%2F7b875909-9103-edda-80a2-b127ae86e162.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=13352d9e69cd0db70ca341510cef0973)
6.コミットする
![コメント 2019-07-27 185647.png](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F463391%2Fdccb891c-4710-502c-2a5b-29c10fa074a5.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=0e71f25156b73f9abf1a0b9a0ce00015)
7.プッシュする
![コメント 2019-07-27 185737.png](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F463391%2F8e09422b-5652-df7d-1202-34ece3271d15.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=3f18c3fbcc3c1c1c381faa4fd969b2d4)
![コメント 2019-07-27 190121.png](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F463391%2F6543dfd6-f7aa-f850-d690-56a10221a62c.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=86da2c92f54f73912367a8a20bd78c8b)
まとめ
流れさえ分かってしまえばどういってことない作業でした。
コマンドもそこまで複雑なものではないので、慣れれば覚えてしまえると思います。
今回はブランチという概念を無視した流れをまとめています。
本来はマスターに直でプッシュすることを禁止している場合があります。
ブランチを使ったプッシュ方法に関しては、別の記事にまとめようと思います。