Git操作まとめ 〜リモートリポジトリを使う

この記事では、Ubuntu18.04LTSにインストールしたGit(version 2.17.1)を使用しています。

[前回の記事](https://qiita.com/tsweblabo/items/d2ed2e0473dc74006192)で、リモートリポジトリについての概要を私の理解している範囲で書きました。
今回は実際に一連の流れを書いていきます。

また、画像が多いので、縮小して掲載してあります。ご了承ください。

## GitHubのアカウント作成

- [GitHubのページ](https://github.com/)に入り、GitHubアカウントを作ります。

    <img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/150278/7851d4cb-fad4-9fb3-013f-7964e06ad91c.png" width=50%>

- Username・Email・Passwordを入力し、「Sign up for GitHub」を押してGitHubアカウントを作ることができます。

---

## 新しいリモートリポジトリの作成

- GitHubのアカウントを作ることができたら、このような画面になります。
    <img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/150278/282d3023-cf0a-3fc8-1e6e-ea1148f5eeb3.png" width=50%>

- 画面右上の「＋」マークをクリック、ドロップダウンメニューが出ます。
    <img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/150278/c0256e6c-3b5e-a000-2524-cb1e523792ed.png">

- 「New repository」をクリック
    <img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/150278/f837e596-c681-1855-5184-59c0f8943519.png" width=50%>

- Repository nameにリモートリポジトリの名前を入力(任意)
- 画面中央のラジオボタンで、リモートリポジトリの公開/非公開を選択できます。
- Create repositoryを押して新しいリモートリポジトリが作られたら、下のような画像が表示されます。
    <img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/150278/17906eaa-56ba-c0a5-ca84-2cdaf3edba42.png" width=50%>

---

## ローカルリポジトリを作る

リモートリポジトリと紐付けるローカルリポジトリを作ります。
ローカルリポジトリは任意の場所に作って構いません。
今回は、testGitというディレクトリを作成し、そこにREADME.mdを作成していきます。

```shell
touch README.md
```

README.mdの中には適当にテキストを入れておきました。

```shell:README.mdを表示させる
cat README.md
```
```markdown:表示結果
## GitHubのテストです。

GitHubの練習
```

ファイルの準備ができました。このディレクトリをGitの管理下におき、コミットしましょう。

```shell:Git管理開始
git init
```
```shell:Git状況確認
git status
```
```shell:結果
ブランチ master

No commits yet

追跡されていないファイル:
  (use "git add <file>..." to include in what will be committed)

	README.md

nothing added to commit but untracked files present (use "git add" to track)
```
```shell:コミットまで
git add README.md
git commit -m "first commit"
```
```shell:Git状況確認
git status
```
```shell:結果
ブランチ master
nothing to commit, working tree clean
```
コミットが完了し、ローカルリポジトリを作ることができました。

## リモートリポジトリとローカルリポジトリを紐付ける

続いてローカルリポジトリを、先程作成したリモートリポジトリに紐付けます。

```shell
git remote add origin https://github.com/tsWebLabo/testRepository.git
```

紐付けしたリモートリポジトリにローカルリポジトリの内容をアップロードするには、`git push`コマンドを使います。

```git
git push -u origin master
```

UsernameとPasswordを聞かれますので、GitHubアカウントを作成した際に登録したものを入力すると、pushできます。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/150278/a2cebf4d-5af5-eac4-bc5e-cf026de83887.png" width=50%>

これで、ローカルリポジトリとリモートリポジトリの紐付けとpushできたことが確認できました。

---

## その後の作業手順

Gitでバージョン管理をする際、長期間に渡って作業をすることがほとんどです。
以下の手順を踏むことで、リモートリポジトリとローカルリポジトリを効果的に運用することができます。

1. リモートリポジトリからローカルリポジトリにpullする
    
    ```shell
    git pull origin master
    ```

2. 作業をすすめ、ローカルリポジトリにコミットする

    ```shell
    git add .
    git commit -m "second commit"
    ```
    ```shell:Gitのログ確認
    git log --oneline
    
    7f399ab (HEAD -> master) second commit
    fc1dd04 (origin/master) first commit
    ```

3. リモートリポジトリにローカルリポジトリの内容をpushする

    ```shell
    git push origin master
    ```

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/150278/d74fbd1d-286d-ed9e-9267-cc9395d2be72.png" width=50%>

変更がリモートリポジトリに反映されていることが確認されました。

今回はブランチを考慮にいれずに進めましたが、Gitをチームで扱う際にはチームのルールに則って効果的な開発を心がけましょう。

---

### 本記事目次ページ
[Git操作まとめ](https://qiita.com/tsweblabo/items/6aec9d022c08954f5024)