超初心者のGitHub(1) リポジトリ作成からpushまで

# 概要
Gitを触ったことのないWebデザイナーが、Git Flowを用いた開発に関わることになりました。
すぐ忘れてしまうので、後から復習できるようやったことを書いていきたいと思います。
なお、GitHubのアカウントはもうあるものとします。

# GitHubやってみよう

## 1. リポジトリを作成する
GitHubのリポジトリ一覧ページへ行き「New」ボタンを押す。
「Create a new repository」ページでリポジトリ名やPublic/Privateなどを設定し、作成！
<img width="1050" alt="github_ss01.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/621295/5bf5830a-9fa3-94e8-75a9-c379c6dce433.png">


## 2. リポジトリをCloneする
### GitHubのページですること
- リポジトリページへ行く→緑色の **[Code]** ボタンを押す（と吹き出しが出る）
- 「Clone with SSH」の下に出てくる
`git@github.com:username/repository_name.git`をコピーする

### コマンドラインツール※でやること
※私はiTerm2を利用しています！

- 作業用ディレクトリまで`cd`で移動しておく　
- さっきコピーしたのを`git clone`の後にペーストしてEnter

```Bash
git clone git@github.com:username/repository_name.git
```
clone出来たら、そのディレクトリに移動しておく

```Bash
cd repository_name
```

## 3. ファイルに変更を加えてみる
既に作成されている**README.md**に変更を加えていきます。

- README.mdをテキストエディタで開いて、文章を書き加えます。
- 現在の状態を確認するため、iTerm2で`git status`と入力してみます。

すると、こんな表示が現れました。

```Bash
On branch master
Your branch is up to date with 'origin/master'.

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
	modified:   README.md

no changes added to commit (use "git add" and/or "git commit -a")
```

英語で何か色々言ってますが、要は「README.mdが修正されていますよ」ってことのようです。

念のため、`git diff`と打ち込んで差分を確認してみます。

```Bash
diff --git a/README.md b/README.md
index 85c10d1..1908121 100644
--- a/README.md
+++ b/README.md
@@ -1,2 +1,3 @@
 # about "plaza"
 テスト作業用スペースです。
+2行目を追加しました。
\ No newline at end of file
```

`+2行目を追加しました。` が、実際追加した文章です。
**「+」**がついていて分かりやすいですね。

しっかり確認できたので、この変更をステージングに上げる作業をします。

## 4. addしてみる
ステージングに上げるのは `git add`を使います。
`git add .`で変更全てをaddできますが、初心者なので、ひとつずつファイルを指定してやっていきます。

```Bash
git add README.md
```
こんな感じ。
さっそく`git status`で現在の状況を確認してみましょう。

```Bash
On branch master
Your branch is up to date with 'origin/master'.

Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
	modified:   README.md
```
お！さっきと変わりました。
`Changes to be committed:` =コミットする変更はこちらです！って感じで、`modified: README.md`と表示されています。


## 5. commitする
ステージングにaddしたので、次はこれをcommitします。コミットメッセージをつけて分かりやすくします。

`git commit`と打つと、**vimエディタ**に切り替わります。最初、これの使い方がよく分からず苦戦しました。

キーボードの「i」を押すとinsertモードになるので、コミットメッセージを入力します。
書き終わったら「esc」キー、「:wq」、「Enter」キーの順に押します。:wqはそのまま順番にコロンとwとqを押します。するといつもの画面に戻ってこれます。

ここでいつもの`git status`

```Bash
On branch master
Your branch is ahead of 'origin/master' by 1 commit.
  (use "git push" to publish your local commits)

nothing to commit, working tree clean
```

「あなたのブランチは origin/master より1コミット進んでいます」と出ますね。
ローカルでコミットしただけでpushしてないので、確かにその通り。
「コミットするものはありません」とも出ます。変更は既にコミットし終わってるのでこれもその通り。よしよし。

## 6. pushする
さて、次はこれをリモートリポジトリへ`git push`します。

```Bash
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 8 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 357 bytes | 357.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To github.com:username/repository_name.git
   ce2e1ef..c2bd63b  master -> master
```

こんな画面が出てきます。よく分からないけど、怒られてる感じじゃないからきっと大丈夫…。
GitHubのページを見にいったら出来てました！OKOK!

さて、この次はブランチを作って作業していきますが、長くなってきたので記事を分けます。
続きはまた後ほど。