Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
77
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

@6592sho

よく使うGitコマンド一覧

Gitとは

Gitはバージョン管理システム。(バージョンとは、コミットした時点のファイルやフォルダをセーブしたもの。)

メリット

Gitを使うことで、開発しているときに、自分が何を変更したかわからなくなったり、ファイルを消したりしてしまったときに、前回のバージョンへ戻ることができることである。また、GithubやBitbucketといったリモートリポジトリと組み合わせて使うことで、チーム開発に置いて非常に効率を上げることができる。

コマンド集

基本コマンド

・ローカルリポジトリの作成(projectのrootで行う)

$ git init

・変更をステージに追加

$ git add . 
$ git add <ファイル名>

・変更をローカルリポジトリに追加

$ git commit -m "commit message"

・ローカルに新規ブランチを作成

$ git branch <新規ブランチ名>

・ブランチ名を変更

$ git branch -m <ブランチ名>

・ブランチの切り替え

$ git checkout <ブランチ名>

・新規ブランチを作成後、移動

$ git checkout -b <新規ブランチ名>

・リモートのブランチをローカルにコピー(ローカルに作成するリポジトリ名はリモートと異なっていてもOK)

$ git checkout -b <新規ブランチ名> <origin/リモートリポジトリ名>

・ブランチの削除

$ git branch -d <ブランチ名>

・ブランチの確認

$ git branch  // ローカルのブランチのみ参照
$ git branch -a  // リモートのブランチも参照

・ローカルで作成したブランチをリモートに登録

$ git push -u origin <ブランチ名>

・現在のGitの状態を確認

$ git status

・変更差分を確認

$ git diff

・変更履歴を確認

$ git log
$ git log --oneline

変更の取り消し

・作業中ファイルの変更取り消し

$ git checkout -- .

・ステージしたファイルの変更取り消し

$ git reset HEAD .

・直前のコミットの取り消し

$ git commit --amend
$ git commit reset --head HEAD^ // --hard: 現在のワークツリーも削除
$ git commit reset --soft HEAD^ // --soft: 現在のワークツリーはそのまま

リモートリポジトリとのやりとり

・設定しているリモートリポジトリを表示

$ git remote

・リモート名を登録(これ以降URLの代わりにリモート名を使用できる)

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

・リモート名を変更

$ git remote rename <旧リモート名> <新規リモート名>

・リモート名を削除

$ git remote rm <リモート名>

・リモートリポジトリへ変更を送信

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

・リモートリポジトリからローカルリポジトリに情報を取得

$ git fetch <リモート名>

・ローカルリポジトリからコンピュータ上に情報をコピー

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

・リモートリポジトリからコンピュータ上に情報をコピー(fetch + merge)

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

・リモートリポジトリからコンピュータ上にコピー(init + pull)

$ git clone

作業中ファイルの一時避難

・作業中ファイルを一時避難

$ git stash

・一時避難中ファイルを表示

$ git stash list

・一時避難中ファイルを復元

$ git stash apply --index

・避難したファイルの削除

$ git stash drop --index

その他

・タグの一覧表示

$ git tag

・タグの作成

$ git tag -a [タグ名] -m "[メッセージ]"

・タグをリモートリポジトリに送信

$ git push [リモート名] [タグ名]
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
77
Help us understand the problem. What are the problem?