ソース管理にGit/GitHubをセットアップし、VSCodeから開発を開始するまでの流れ

# はじめに
毎回忘れて調べ直すので情報をまとめておきます。
環境は以下
- Mackbook air(M1,2020) 8GB macOS Montery バージョン　12.3.1
- パッケージマネージャ：[Homebrew 3.4.9](https://brew.sh/2021/02/05/homebrew-3.0.0/) [インストール](https://brew.sh)
- 開発環境：vscode
# Gitの準備
### GitをHomebrewで管理
標準で入っているgitのバージョン確認
```zsh
~ % git --version
git version 2.32.0 (Apple Git-132)
```
[Homebrewでgitを入れ直す](https://qiita.com/bakepotate/items/dc457a0046413ce1f965)

```zsh
~ % git --version
git version 2.36.0
```
### gitコマンドの設定
名前、メールアドレス、デフォルトエディター(今回はVSCODEを指定します)を設定。デフォルトエディターは設定しなくとも動作します。

```zsh
~ % git config --global user.name '名前'
~ % git config --global user.email 'メールアドレス'
~ % git config --global core.editor 'code --wait'
```
これで準備完了したので、最低限の動作確認(初期化してファイルが存在するかを確認)
```zsh
~ % mkdir sample
~ % cd sample
sample % git init
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint: 
hint: 	git config --global init.defaultBranch <name>
hint: 
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint: 
hint: 	git branch -m <name>
Initialized empty Git repository in sample/.git/
sample % ls -l .git
HEAD		config		description	hooks		info		objects		sample % cd ..
~ % rm -r sample
~ % 
```
## GitHubのセットアップ
### GitHubにアカウントを作成
https://github.com/ にアクセスして、ユーザ名、メールアドレス、パスワードを入力すると、いくつか質問されるため、回答をして作成が完了すると、メールアドレスにメールが到着するので、認証(Verify email address)すると作成できます。

### sshでGitHubに接続する
sshのキーを作成(ログは古いのが残っていたので上書きしています)。よく忘れるので、パスフレーズは設定しませんでした（エンターキーのみ押せばOKです）。
```zsh
 ~ % ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (~/.ssh/id_rsa): 
~/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in ~/.ssh/id_rsa
Your public key has been saved in ~/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:xxxxxxxxxxxx hostname.local
The key's randomart image is:
+---[RSA 3072]----+
+----[SHA256]-----+
```

公開鍵をクリップボードにコピー
```zh
cat ~/.ssh/id_rsa.pub | pbcopy
```

GitHubに設定
1. [GitHubに接続](https://github.com)
1. 右上のアイコンをドロップダウンして`Settings`を選択
1. 左ペインの`SSH and GPG keys`を選択
1. `New SSH key`を選択
1. `Tile`にsshkey20000101など分かりやすいラベルを入れて、`Key`にペーストする
1. `Add SSH key`を選択して終了

SSHで接続してみる
```zsh
~ % ssh -T git@github.com       
Hi USERNAME! You've successfully authenticated, but GitHub does not provide shell access.
~ % 
```
## GitHubにリポジトリを作成する
ローカルに環境を作ってからGitHubに上げる方法でもできるが、一通りの資材が作られるため、GitHub側でリポジトリを作成する

1. [GitHub](https://github.com)のトップから`Create repository`を選択
1. `Repository name`にリポジトリ名を入れる
1. `Public`(公開)もしくは`Private`(非公開)を選択.無料プランでも非公開が可能となりました。
1. `Add a REAME file`にチェックを入れる
1. `Add .gitignore`で利用する言語を入れる(不要な資材をGitHubに上げないようにできます)
1. 非公開を選択しているので、ライセンスなしで一旦作成。ライセンスは[こちら](https://qiita.com/Tatamo/items/ae7bf4878abcf0584291)が参考になります。
1. 作成するとリポジトリのトップが表示されます
1. `Code`を展開して`SSH`を選択します。
1. 表示されたコードをクリップボードにコピーします

### VSCodeから開く
GitHubで作成したリポジトリをvscodeから開いて開発を開始します。
1. vscodeを起動
1. `Gitリポジトリのクローン…`を選択
1. 画面上部中央に`リポジトリURLを指定するか、リポジトリソースを選択します`と表示されたところへ先ほどの情報をペーストします
1. 格納先のフォルダを選択します。
1. ウィンドウを開き`README.md`,`.gitignore`が作成できていれば完了

ここまでで、GitHubとローカルを接続してvscodeからの開発が可能な状態になります。

続きは別途です


## 参考にしたサイト
- [gitコマンド一覧](https://qiita.com/fukumone/items/73e1a9a62c5e4454263b#:~:text=Git%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E4%B8%80%E8%A6%A7%201%20%E4%BD%9C%E6%A5%AD%E3%83%87%E3%82%A3%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AA%E3%81%ABGit%E3%82%92%E4%BD%BF%E3%81%86%E5%AE%A3%E8%A8%80%E3%82%92%E3%81%99%E3%82%8B%202%20%E3%82%B9%E3%83%86%E3%83%BC%E3%82%B8%E3%83%B3%E3%82%B0%E3%82%A8%E3%83%AA%E3%82%A2%E3%81%AB%E3%81%82%E3%81%92%E3%82%8B%203%20%E3%82%B3%E3%83%9F%E3%83%83%E3%83%88%E3%81%99%E3%82%8B%204,8%20%E3%82%AA%E3%83%97%E3%82%B7%E3%83%A7%E3%83%B3%209%20%E7%8F%BE%E5%9C%A8%E3%81%AE%E7%8A%B6%E6%85%8B%2010%20%E5%89%8D%E3%81%AE%E7%8A%B6%E6%85%8B%E3%81%AB%E6%88%BB%E3%82%8B%20%E3%81%9D%E3%81%AE%E4%BB%96%E3%81%AE%E3%82%A2%E3%82%A4%E3%83%86%E3%83%A0...%20)
- [Git GitHubの始め方（超入門）](https://qiita.com/kakeru0520sou1/items/e28ae0b27a7911c302d5)