Git初心者入門2

# このページについて
Gitについて学んだのでマメじゃないから苦手だけどアウトプットしようと思い立った

三部作の二作目

- [Gitの基本的な使い方](https://qiita.com/sky11fur/items/2e9cce0ea0e4b404954b)
- 開発サイクル  <U>ここ<U>
- CONFLICT

# 作業

開発？のサイクルとして　問題点発覚直してレビューしてもらっておk　を見る
issuesをGitHubのサイト側から発生させてそれを解決するために
新ブランチの作成→編集して解決→mergeする


## ローカルリポジトリをGitHubにアップ
自分のGitHubのサイト上で

1.Repositories
2.New
3.ローカルリポジトリと同じ名前をRepository nameに入れてCreate repository
4.…or push an existing repository from the command lineの下　赤枠の中身をコピペする。
 
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/397568/32ca6dd4-7ee2-8ae2-d15b-307950049652.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/397568/8947352e-0ab8-e287-56a1-6374240689e9.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/397568/9bee43c6-9f3b-2d5d-e62b-ea58ad90f304.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/397568/fda22f38-3f01-6404-4806-d81836aaf563.png)

これでGitHubの自分のアカウントのリポジトリとローカルリポジトリが紐付けされた。

## GitHub上でIssuesを作成する。
1.Issues
2.New issue
3.Titleに修正のタイトル
  writeに修正の具体的な内容　を記述し　submit new issue　
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/397568/99225329-75a9-dd4d-607f-73c6bf599090.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/397568/e2ae7191-a87a-c7b8-960a-9420b017dce2.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/397568/627969ca-25e7-47f3-43e2-d84f9ce63c91.png)

## issueを解決するためにブランチの確認、作成、移動
### 現在のブランチの確認
[コマンド]
`git branch`

[結果]

```:git_branch
* master 
```

### ブランチの作成＆確認
[コマンド]
`git branch modify-readme`
`git branch`
[結果]

```:git_branch
* master
  modify-readme
```

### ブランチの移動
[コマンド]
`git checkout modify-readme`
`git branch`
or
`git switch modify-readme`
`git branch`

```:git_switch(checkout)_modify-readme
Switched to branch 'modify-readme'
```
```:git_branch
  master
* modify-readme
```

## issueにしたがってローカルリポジトリを修正

### 修正する
[コマンド]
`vi README.md`
`cat README.md`
[結果]

```:cat_README.md
# git-test
Hello World
```

### 状態の確認の変更点を見る
[コマンド]
`git status`
`git diff`
[結果]

```:git_status
On branch modify-readme
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")
```

```:git_diff
--- a/README.md
+++ b/README.md
@@ -1 +1,2 @@
 # git-test
+Hello World
```

### 変更を再確認し、インデックスに追加　ローカルリポジトリに追加　GitHubにpushする。
[コマンド]
`git add .`
`git status`
`git commit -m "#1 modify README.md"`
`git status`
`git push origin modify-readme`
[結果]

```:git_status
On branch modify-readme
Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
	modified:   README.md
```

```:git_commit_-m_"#1_modify_README.md"
[modify-readme e6203bb] #1 modify README.md
 1 file changed, 1 insertion(+)
```

```:git_status
On branch modify-readme
nothing to commit, working tree clean
```

```:git_push_origin_modify-readme
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 16 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 308 bytes | 308.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
remote: 
remote: Create a pull request for 'modify-readme' on GitHub by visiting:
remote:      https://github.com/Hidetoshi-y/git-test/pull/new/modify-readme
remote: 
To https://github.com/Hidetoshi-y/git-test.git
 * [new branch]      modify-readme -> modify-readme
```

## pull requestとmerge
1. Compare & pull request
2. write[fixed #1] & Create pull request
3. Merge pull request
4. Confirm merge
5. Delete branch

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/397568/5128786d-4639-8674-238c-870a15133ac5.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/397568/3e7fc348-83d9-e6c7-3177-08124998106b.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/397568/3d88e28f-5cd1-5da9-8a5c-3c3c63d1aa14.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/397568/1f072d41-c519-616e-a48a-e2fad0469328.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/397568/1e05874d-a162-2416-429e-a8b8616e639b.png)

## ローカルの別のブランチの変更をマスターに統合する

### branchの確認
[コマンド]
`git branch`
[結果]

```:git_branch
  master
* modify-readme
```

### branchの切り替えと確認
[コマンド]
`git switch master`
`git status`

[結果]

```:git_switch_master
Switched to branch 'master'
Your branch is up to date with 'origin/master'.
MacBook-Pro15:git-test hide$ git status
On branch master
```

```:git_branch
* master
  modify-readme
```

### リモートリポジトリ(GitHub)の最新データを取得
[コマンド]
git fetch
[結果]

```:git_fetch
remote: Enumerating objects: 1, done.
remote: Counting objects: 100% (1/1), done.
remote: Total 1 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (1/1), 632 bytes | 632.00 KiB/s, done.
From https://github.com/Hidetoshi-y/git-test
   94441f8..eacbb59  master     -> origin/master
```

### 現在のブランチとの差異を確認
[コマンド]
`git diff`
[結果]

```:git_diff_HEAD_(FETCH_HEAD)
remote: Enumerating objects: 1, done.
remote: Counting objects: 100% (1/1), done.
remote: Total 1 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (1/1), 632 bytes | 632.00 KiB/s, done.
From https://github.com/Hidetoshi-y/git-test
   94441f8..eacbb59  master     -> origin/master
```

### ローカルリポジトリに変更を統合する。
[コマンド]
`cat README.md`
`git merge FETCH_HEAD`
`cat README.md`
[結果]

```:cat_README.md
# git-test
```

```:git_merge_(FETCH_HEAD)
Updating 94441f8..eacbb59
Fast-forward
 README.md | 1 +
 1 file changed, 1 insertion(+)
```

```:cat_README.md
# git-test
Hello World
```

# 次回予告
CONFLICTについてまとめます。