gitをやって完全に理解した

# まえがき
Bootstrapを試すために、github上でサイトを作ります
ずっと前にほんの一瞬だけgithubを使ったけど、一切なんにもわかんなかったのでgitｎリベンジします

環境構築をする際に、MSWindowsはSourcetreeがいいと聞いたのでそれを使います
今回は環境構築をし、Githubと連携をしてコマンドで操作ができるようになるまでです


# 環境
- Microsoft Windows 10 pro
- Sourcetree Version 3.4.22

# 下準備
エクスプローラーの上の"表示"項目から、"隠しファイル" と "ファイル名拡張子" にチェックを入れる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/230abf5e-b6e4-437a-b00e-98551d2076df.png) ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/56d4c49a-6b73-401b-99a5-efb343c66ef9.png)


# Sourcetree インストール
Sourcetreeのホームページからインストーラーをダウンロードします
https://www.sourcetreeapp.com/

インストーラーを実行するとこれが出てきます
Bitbucketの登録はスキップ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/16c97539-f40b-42ee-9dcd-f69b8e4cc881.png)

次の画面では Gitだけにチェックを入れる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/3ed07ebc-2556-4ee3-9b07-76f493f50c39.png)

emailをいれる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/6e4e81bd-5ce7-4ad5-87b5-ca3b2d454938.png)

いいえ で、SSH keyの設定は後に回します
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/5dff10dc-f641-4370-975e-1213af5d7df8.png)

インストールが終わった状態です
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/6fa030c9-142b-4cd9-b97a-553b0ef42feb.png)

# レポジトリの作成
今回はGithub上で作ります
https://github.com/new

レポジトリ名と、説明(Description)を入れて"Create repository"
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/2f72f0b4-ff04-4060-8764-54ff623756c3.png)

おわった状態
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/8c3c12a1-d04c-4356-93d2-3a73c0de6b93.png)


# クローンしてローカルで操作
作ったレポジトリのURLを
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/129dd162-1c5f-48a2-bf69-c8412aa90b39.png)
Sourcetreeの"Clone"の 元のパス/URL に貼り、
保存先のパス と 名前 も入れてクローンします
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/766686eb-99c0-406e-aba4-60b1820bbba8.png)

指定したフォルダにレポジトリがコピーされます
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/838ef759-08fc-463b-aa00-df626ff7ecae.png)
ㅤ
ローカル上で、READMEファイルを作製しました
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/09fd4084-11dc-429a-aae0-dcd720bfc034.png)

中身はこんな感じになってます
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/4e79c5c9-5a13-42b5-a181-899f7e5dbee7.png)
ㅤ

Sourcetreeからターミナルを起動します
ここから後は、コマンドで操作をしていきます
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/893bc16e-c5bf-4b16-94a3-c2c38c41cdd9.png)

最もよく使うコマンドは
``` git add ```
``` git commit ```
``` git push```
この3つを使えるようにしていきます
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/3bf0418a-c47e-4028-954f-7c0bb2546bbf.png)
addとcommitはokでした

git pushでエラーが起こっているので、githubの認証の設定をします
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/263bb4d3-d5c8-4167-925a-99c68710ffed.png)

なお、以下のSSH keyの登録を一度してしまえば、それ以降はgit./configの書き換えだけで対応できます (後述)

# SSH keyを登録する
認証の設定はいろいろありますが、


``` ssh-keygen -t rsa ``` をします
いろいろ聞かれますが、全てenterで進めていきます
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/d63a7514-21bb-4dc8-ad71-30fc54ba32cb.png)

作成したSSH keyは以下のようにして確認できます
``` cat ~/.ssh/id_rsa.pub ```

作ったSSH keyを以下のページに入力します
https://github.com/settings/keys
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/9bec9b36-0133-4a05-912e-e9e4696b7858.png)
ssh-rsaから始まるkeyをコピペします


# .git/configのｋ

githubに登録できたら、ローカルのレポジトリの設定をSSH key対応に書き換えます
レポジトリの.git/configの中身を以下のように書き換えます
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/b07c5a97-094c-4abd-b9b7-c364966b9160.png)
↓
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/ef37bb52-5d97-4064-ac2f-498d1d9657b0.png)
github.comの後ろは : であることに注意してください


改めて
``` git push origin main ``` をすると、
今度は無事pushできました
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/6890ac78-3c32-4be4-b42d-1721d2760a9a.png)

ここでREADMEの拡張子を間違えに気づきました
ファイルの拡張子の修正は、エクスプローラー上ではなくて、git mvで修正しなければなりません
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/43ba7d26-4c3d-4b2d-9306-7c12b4bce441.png)

再度 add, commit, push をしました
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3954871/5ee1961e-ed1c-40d5-94ef-71c91a83fb7a.png)
変更が反映されました


一通り設定が終わって、使えるようになりました

もう完全に理解したのでおわり

---
参考：
https://qiita.com/nanbuwks/items/4f6a685f0bb4953e75c8
https://qiita.com/nanbuwks/items/88027947b07bc1683209