0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Gitの基本コマンド

Posted at

##はじめに
これから実務に入るにあたって、コマンドを調べる際に効率的に調べられるようにまとめました。

##Gitでよく使うコマンド

###git clone

Gitリポジトリのコピー
ファイルと.gitディレクトリの両方がコピーされる。

$ git clone <リポジトリ名>

###git add
変更をステージに追加する
※ステージは一部のファイルを変更するために存在する

$ git add <ファイル名>
$ git add <ディレクトリ名>
$ git add .

###git commit
変更を記録する(コミット)
#####<わかりやすいコミットメッセージ>
1行目:変更内容の要約
2行目:空行
3行目:変更した理由

$ git commit
$ git commit -m "<メッセージ>"   //エディタ立ち上がらずに記録
$ git commit -v               //変更内容を確認できる

###git status
現在の変更状況を確認
①ワークツリーとステージの間で変更されたファイル
②ステージとリポジトリの間で変更されたファイル

$ git status

###git diff
変更差分を確認する

# git addする前の変更分
$ git diff
$ git diff <ファイル名>

# git addした後の変更分
git diff --staged

###git log
変更履歴を確認する

$ git log

#1行で表示する
$ git log --oneline

#ファイルの変更差分を表示する
$ git log -p index.html

#表示するコミット数を制限する
$ git log -n <コミット数>

###git rm
ファイルの削除を記録する

# ファイルごと削除
$ git rm <ファイル名> //ワークツリーとリポジトリのファイルの削除
$ git rm -r <ディレクトリ名>

#ファイルを残したいとき
$ git rm --cached <ファイル名> //リポジトリのファイルのみ削除

git mv

ファイルの移動を記録する

$ git mv <旧ファイル><新ファイル>

# 以下のコマンドと同じ
$ mv <旧ファイル><新ファイル>
$ git rm <旧ファイル>
$ git add <新ファイル>

###git remote add

リモートリポジトリ(GitHub)を新規追加する

#originというショートカットでurlのリモートリポジトリを登録
$ git remote add origin <GitHubのURL>

###git push
リモートリポジトリ(GitHub)へ送信する

$ git push <ブランチ名><リモート名>
$ git push origin master

###git config --global alias
コマンドにエイリアスをつける

$ git config --global alias.ci commit
$ git config --global alias.st status
$ git config --global alias.br branch
$ git config --global alias.co checkout

###git checkout
ファイルへの変更を取り消す

$ git checkout -- <ファイル名>
$ git checkout -- <ディレクトリ名>

# 全変更を取り消す
$ git checkout -- .

###git reset HEAD
ステージした変更を取り消す
※ワークツリーのファイルには影響しない(削除されない)

$ git reset HEAD <ファイル名>
$ git reset HEAD <ディレクトリ名>

#全変更を取り消す
$ git reset HEAD .

###git commit --amend
直前のコミットをやり直す

$ git commit --amend

###git remote
リモートの表示

$ git remote
#対応するリモートの表示
$ git remote -v

###git remote add
リモートリポジトリを新規追加する
※リモートリポジトリは複数登録可

$ git remote add <リモート名> <リモートURL>

###git fetch
リモートから情報を取得
リモートリポジトリからローカルリポジトリに情報を取ってくる
remotes/リモート/ブランチに保存

$ git fetch <リモート名>
$ git fetch origin

###git pull
リモートから情報を取得してマージする
ワークツリーまで一度に反映する

$ git pull <リモート名> <ブランチ名>
$ git pull origin master

#上記コマンドは省略可能
$ git pull

#下記コマンドと同じ
$ git fetch origin master
$ git merge origin/master

###git remote show
リモートの詳細情報を表示する

$ git remote show <リモート名>
$ git remote show origin

###git remote rename
リモートを変更、削除する

#名前の変更
$ git remote rename <旧リモート名> <新リモート名>
$ git remote rename tutorial new_tutorial

#削除する
$ git remote rm <リモート名>
$ git remote rm new_tutorial

###git branch
ブランチの一覧を表示
ブランチを新規追加

#ブランチの一覧表示
$ git branch
$ git branch -a //全てのブランチの表示

#ブランチを新規追加
$ git branch <ブランチ名>
$ git branch feature

###git checkout
ブランチを切り替える

$ git checkout <既存ブランチ名>
$ git checkout feature

#ブランチを新規作成して切り替える
$ git checkout -b <新ブランチ名>

###git merge
変更履歴をマージ

$ git merge <ブランチ名>
$ git merge <リモート名/ブランチ名>
$ git merge origin/master

###git branch
ブランチを変更、削除する

#変更する
$ git branch -m <ブランチ名>
$ git branch -m new_branch

#削除する
$ git branch -d <ブランチ名>
$ git branch -d feature

#強制削除
$ git branch -D <ブランチ名>

###git rebase
リベースで履歴を整えた形で変更を統合する
GitHubにプッシュしたコミットをリベースするのはNG
git push -fはNG

$ git rebase <ブランチ名>

###git pull --rebase
プルのリベース型

$ git pull --rebase <リモート名> <ブランチ名>
$ git pull --rebase origin master

プルをリベース型に設定

$ git config --global pull.rebase true
#masterブランチでgit pullするときだけ
$ git config branch.master.rebase true

###git rebase -i
複数のコミットをやり直す

$ git rebase -i < コミットID>
$ git rebase -i HEAD~3

#やり直したいcommitをeditにする
edit gh21f6d ヘッダーの修正
pick 193054e ファイルの追加
pick 84gha0d READEME修正

#やり直したら実行する
$ git commit --amend

#次のコミットへ進む(リベース完了)
$ git rebase --continue

コミットを並び替える、削除する

$ git rebase -i HEAD~3

#コミットを削除する
pick 193054e ファイルの追加
pick 84gha0d READEME修正

#並び替えたい順に並び替える
pick 84gha0d READEME修正
pick 193054e ファイルの追加

#コミットをまとめる
pick gh21f6d ヘッダーの修正
squash 193054e ファイルの追加
squash 84gha0d READEME修正

#コミットの分割
pick gh21f6d ヘッダーの修正
pick 193054e ファイルの追加
edit 84gha0d READEME修正とindex修正

$ git reset HEAD^
$ git add README
$ git commit -m 'README修正'
$ git add index.html
$ git commit -m 'index.html修正'
$ git rebase --continue

###git tag
タグの作成

#注釈付きタグ
$ git tag -a [タグ名] -m "[メッセージ]"
$ git tag -a 20210730_01 -m "version 20210730_01"

#軽量版タグ
$ git tag [タグ名]
$ git tag 20210730_01

#後からタグ付けする
$ git tag [タグ名] [コミット名]
$ git tag 20210730_01 8a6cbc4

#タグのデータを表示する
$ git show [タグ名]
$ git show 20210730_01

#タグをリモートリポジトリに送信
$ git push [リモート名] [タグ名]
$ git push origin 20210730_01

#タグの一斉送信
$ git push origin --tags

###git stash
作業を一次避難する

$ git stash
$ git stash save

#避難した作業を確認
$ git stash list

#避難した作業を復元
$ git stash apply
#ステージの状況も復元
$ git stash apply --index

#特定の作業を復元
$ git stash apply [スタッシュ名]
$ git stash apply stash@{1}

#最新の作業を削除する
$ git stash drop

# 特定の作業を削除する
$ git stash drop [スタッシュ名]
$ git stash drop stash@{1}

#全作業を削除する
$ git stash clear

##参考リンク
https://www.udemy.com/course/unscared_git/

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?