LoginSignup
3
4

More than 3 years have passed since last update.

新卒webエンジニアの僕が実際使ったGitコマンド集

Last updated at Posted at 2020-02-21

Gitとは

wikipedia先生によると

Gitは、プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システムである。wiki

Gitは分散型バージョン管理システムといって、リモート(元のファイル)をローカルに落として編集できるんだなくらいに思っています。

branch

  • git branch
    ローカルブランチの確認

clone

  • git clone クローンしたいリポジトリ
    リモートリポジトリをクローンして
    ローカルリポジトリを作る

checkout

  • git checkout -b ブランチ名
    ブランチの作成
  • git checkout ブランチ名
    ブランチを切り替える

fetch

  • git fetch
    リモートリポジトリから最新情報をローカルリポジトリに持ってくる(更新はされていない)

merge

自分のブランチに他のブランチの更新を取り込む

  • リモートブランチにローカルブランチの更新を取り込みたい場合
    git merge 変更を加えたローカルブランチ名
    更新を取り込みたいリモートブランチにいる状態で実行する  
      

  • コンフリクトが起きて編集前にマージを取り消す場合
    git merge --abort
      

  • コンフリクトが起きて編集後にマージを取り消す場合
    git reset --hard HEAD

  • コンフリクトが起きてリモートで上書きしたいとき

git fetch origin コンフリクトが起きたブランチ名
git reset --hard origin/コンフリクトが起きたブランチ名

pull

fetchとmergeを同時に行う

  • git pull origin master

ローカルのマスターにいる状態で実行するとリモートのマスターからの変更がローカルのマスターに組み込まれる

add

追加、変更したファイルをインデックス(commit候補)に加える
※add単体での使用はしないため例は省略

commit

インデックスに登録してある変更対象をローカルリポジトリに反映

  • git commit -am "コミットメッセージ"
    addとcommitを同時に行い、メッセージも指定できる

show

  • git show
    最新コミット内容表示

reset

  • git reset --soft
    コミットだけを取り消す(ローカルのワークディレクトリの内容は変更しない)

  • git reset --hard
    ローカルのワークディレクトリの内容も含め、コミットを取り消す

  • git reset --soft HEAD^
    直前の間違ったコミットを取り消す(「HEAD^」は、直前のコミットという意味を表すオプション)

git pushを取り消す2つの方法

push

ローカルブランチの変更をリモートブランチに反映

  • git push origin ブランチ名
    変更したローカルブランチにいる状態で実行すると指定したリモートブランチに変更を反映できる

delete

  • git branch -d ブランチ名
    マージ済みのブランチのみ削除

  • git branch -D ブランチ名
    どんなローカルブランチでも削除できる

  • git push --delete origin ブランチ名
    リモートブランチを削除
    ※originはリモートリポジトリのこと

stash

  • git stash
    変更を退避する

  • git stash save "message"
    メッセージをつけて退避

  • git stash list
    退避した作業一覧を見る

  • git stash apply stash@{0}
    退避した作業を戻す

  • git stash drop stash@{0}
    退避した作業を消す

  • git stash pop stash@{0}
    applyとdropを同時に行う

  • git stash clear
    退避した作業を全削除

3
4
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
3
4