LoginSignup
0
0

Gitコマンド

Last updated at Posted at 2022-04-12

add

コミット対象ファイルをインデックスに登録するためのコマンドです。

  • ファイル
    git add [file1] [file2] ...

  • フォルダ
    git add [dir]

  • 現在フォルダ
    git add .

branch

  • 新規作成
    git branch <name>

    1. 新規と追跡(トラッキングブランチ)
      • git branch development origin∕development
    2. 追跡設定(トラッキングブランチ)
      • git branch -u origin∕development development
      • git branch --track development origin∕development
  • 削除

    • git branch -D develop:ローカル
    • git push origin --delete feature/XXXXX:リモートrepository
  • 変更

    • git branch -m <new branchname>
  • 確認

    1. 全て
      git branch -a
    2. local
      git branch
    3. remotes
      git branch -r
    4. マージ済み
      git branch --merged
    5. 詳細表示
      git branch -v
  • 追跡指定
    現在チェックアウトしているブランチが、指定したリモートブランチを追跡するようにする。

    • git branch -u <upstream>
    • git branch -u <upstream> <branchname>
    • git branch --unset-upstream <branchname>
  • Pushローカル

    • git push origin newBranch
  • ローカルブランチとリモート

    • git branch --set-upstream-to origin/newBranch

checkout

  • 変更取り消し
    1. ファイル指定
      git checkout <filename>
    2. 全て
      git checkout .
  • 追跡
    git checkout -b development origin∕development

clean

Git による管理されていないファイルを、作業ツリーから削除します。
git clean [-d] [-f] [-i] [-n] [-q] [-e <pattern>] [-x | -X] [--] <path>…​

  • 削除
    git clean

clone

リモートリポジトリをローカルリポジトリに複製(コピー)するためのコマンド
です。

git clone <url>

  • プロジェクト名指定
    git clone https://github.com/kitaaaa-kitsune/training <projectname>

commit

インデックスにあるファイルの変更内容を「コミット」するためのコマンドです。

  • コミット
    git commit -m "<message>"
  • コミット取消soft
    git reset --soft HEAD^:add残す
  • コミット取消hard
    git reset --hard HEAD^
  • コミット取消mixed(よく使われている)
    git reset --mixed HEAD^ or git reset HEAD^
  • コミットのコメントを修正
    git commit --amend

diff

「ワーキングディレクトリ」と「インデックス」の差分を表示するためのコマンドです。

  • pull前にリモートとの変更点
    git diff HEAD..リモート名/ブランチ名
  • push前にリモートとの変更点
    git diff リモート名/ブランチ名..HEAD
  • add前に変更点
    git diff
  • add後に変更点
    git diff --cached
  • コミットした変更点
    git diff HEAD^
  • コミット同士
    git diff 変更前のSHA..変更後のSHA
  • ブランチ同士
    git diff ブランチA..ブランチB
  • ファイルの変更点
    git diff -- 対象のファイルパス
  • 別ファイル同士の比較
    git diff -- ファイルパスA ファイルパスB
  • ファイル名だけ表示
    git diff --name-only

fetch

リモートリポジトリの情報をローカルリポジトリに反映するためのコマンドです。

init

リポジトリを作成するためのコマンドです。

log

  • 全てログ
    git log
  • 特定ブランチ
    git log --first-parent <ブランチ名>
  • 特定の期間
    1. 指定した日付以降のコミットログを表示する
      git log --since 日付
    2. 指定した日付以前のコミットログを表示する
      git log --until 日付
    3. 日付1から日付2までの期間のコミットログを表示する
      git log --since 2020/2/1 --until 2020/2/29
  • ユーザ
    git log --author=ユーザーネーム
  • キーワード
    git log --grep=commentキーワード
  • 逆順
    git log --reverse

merge

特定のブランチやリビジョンを、現在のブランチに取り込むためのコマンドです。

  • マージ
    git merge origin/master
    現在のブランチにリモートブランチ「origin/master」を取り込む

pull

git fetchgit mergeの2つをまとめて実行するコマンドです。
「--rebase」オプションを使うことで、「merge」の代わりに「rebase」を実行することができます。

git pull origin master

git pull --rebase origin master

push

  • push
    git push origin master
  • pushと追跡
    次回からgit pushでリモートリポジトリにプッシュ
    git push -u origin master

rebase

マージと同じように、ほかのブランチのリビジョンを取り込むコマンドです。

remote

ローカルリポジトリで指定するリモートリポジトリの追加や削除をおこなうためのコマンドです。

reset

コミットやインデックス登録をリセットするためのコマンドです。
インデックスに登録したファイルをリセット(登録前に戻す)しています。

status

追跡確認 git status -sb
オプション

reflog

現在のHEAD位置および、過去のコミットのHEADでの表記を一覧で参照できるコマンド

  • HEADの履歴表示git reflog
    1. HEAD:現在作業中のブランチ
    2. HEAD -> master:現在作業中のブランチがmasterブランチと同じ
    3. HEAD@{0}:0番目のHEAD=現在作業中のブランチ
    4. HEAD@{1}:1つ前のコミット(現在作業中のブランチから1つ遡る)
    5. HEAD@{n}:n個前のコミット(現在作業中のブランチからn個遡る)
  • HEAD移動
    1. HEAD~:~の数がn個前になる。例は「HEAD@{1}」と同じ。
    2. HEAD^:^の数がn個前になる
    3. @^:^の数がn個前になる
    4. @~:~の数がn個前になる

name-rev

ハッシュからブランチ名を確認
git name-rev ce2f63d77ca0049f04bf5466bb240d59e8fbcd9f

参考

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