Gitコマンドの使い方について

<h1>Gitコマンドの使い方について</h1>

共同開発で使用されるgitコマンドについて、基本的な知識についてまとめた。



<h2>git init</h2>

git initはリポジトリーを作成するコマンド

※リポジトリーとはデータの保管場所のこと。

```
xxxxxxx@MacBook-Pro git-command-test % git init
Initialized empty Git repository in /Users/sasakidaisuke/git-command-test/.git/
```


<h2>git clone</h2>

リポジトリーのクローンを作成する場合にはgit cloneを使用し、以下コマンドを実行する。

git clone [ディレクトリー名]



<h2>git add</h2>
git addはコミット対象のファイルを登録するためのコマンド

git add [ファイル名]
```
xxxxxxx@MacBook-Pro git-command-test % git add index.html
```

git add -Aとすると変更、削除、新規作成されたファイルがすべt
addされる


<h2>git commit</h2>

git commit [ファイル名]<br>

```
xxxxxxx@MacBook-Pro git-command-test % git commit index.html
[master (root-commit) 6457027] initial commit
 1 file changed, 3 insertions(+)
 create mode 100644 index.html
```
commitの際の文言を聞かれるため、文言を記載する。

git commit -mを使う方が手間が省けて楽なのでこちらも紹介。

```
xxxxxxx@MacBook-Pro git-command-test % git add new-branch-file.html
xxxxxxx@MacBook-Pro git-command-test % git commit -m "文章を追加"
[master b320291] 文章を追加
 1 file changed, 2 insertions(+)
xxxxxxxMacBook-Pro git-command-test %
```



<h2>git remote</h2>
git remoteはリモートリポジトリーを作成するコマンド

git remote add origin https~(githubのURL)　⇦originはデフォルトで使用される場所

<h2>git pull</h2>

git pullは他のリポジトリーで加えられた変更をマージするためのコマンド

git pull  [変更点取得元リポジトリーのURL]


<h2>git push</h2>
git pushは、ローカルリポジトリーの内容をリモートリポジトリーに反映させるコマンド

git push origin master ⇦branchについてはdefaultでmasterになっているはずなので、ここではmasterにする。

```
xxxxxxx@MacBook-Pro git-command-test % git push origin master
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Writing objects: 100% (3/3), 231 bytes | 231.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To https://github.com/daisuke2549/git-command-test.git
 * [new branch]      master -> master
xxxxxxx@MacBook-Pro git-command-test %
```


<h2>git branch</h2>

branchをdefaultのmasterから分岐させることにより、masterに影響を及ぼさずに開発できる分岐された機能のこと。

<b>○branch作成コマンド<b>

git branch [ブランチ名]

```
xxxxxxx@MacBook-Pro git-command-test % git branch test-branch
xxxxxxx@MacBook-Pro git-command-test % git branch
* master
  test-branch
```

git branchで現在作成されているブランチが確認できる。<br>


<b>○branch切替コマンド<b>

git checkout [切替後のブランチ名]

```
xxxxxxx@MacBook-Pro git-command-test % git checkout test-branch
Switched to branch 'test-branch'
```

<b>○branch削除コマンド<b>

不要になったブランチは以下のコマンドで削除します。

git branch -d [削除するブランチ名]

```
xxxxxxx@MacBook-Pro git-command-test % git branch
* master
  sample-branch
  test-branch
xxxxxxx@MacBook-Pro git-command-test % git branch -d sample-branch
Deleted branch sample-branch (was 6457027).
xxxxxxx@MacBook-Pro git-command-test % git branch
* master
  test-branch
xxxxxxx@MacBook-Pro git-command-test %
```

<b>○branch名変更コマンド<b>

git branch -m [変更前のブランチ名] [変更後ブランチ名]


```
xxxxxxx@MacBook-Pro git-command-test % git branch
* master
  test-branch
xxxxxxx@MacBook-Pro git-command-test % git branch -m test-branch change-name-branch
xxxxxxx@MacBook-Pro git-command-test % git branch
  change-name-branch
* master
```



<h2>git merge</h2>
git mergeは分岐したbranchとmasterの内容をマージするために使用するコマンド

今回は上で作成したtest-branchとmasterのマージの手順を紹介する。

<b>①branchをmasterへ変更</b>

```
xxxxxxx@MacBook-Pro git-command-test % git checkout master
Switched to branch 'master'
```
<b>②masterとbranchをマージ</b>

git merge [マージするブランチ名]

```
xxxxxxx@MacBook-Pro git-command-test % git merge test-branch
Updating 6457027..cbaad6b
Fast-forward
 index.html         | 2 ++
 sample-branch.html | 3 +++
 test-branch.html   | 0
 3 files changed, 5 insertions(+)
 create mode 100644 sample-branch.html
 create mode 100644 test-branch.html
```

<b>③masterをpush</b>

```
xxxxxxx@MacBook-Pro git-command-test % git push origin master
Total 0 (delta 0), reused 0 (delta 0)
To https://github.com/daisuke2549/git-command-test.git
   6457027..cbaad6b  master -> master
xxxxxxx@MacBook-Pro git-command-test %
```

これでマージが完了して、リモート上でも反映される。