【Git】コマンドと使い方まとめ

当ページのリンクには広告が含まれています。
coding computer data depth of field
  • URLをコピーしました!

gitの使い方をよく忘れるのでコマンドをメモしておきます。
※随時更新

関連記事:基本コマンドプロンプト一覧

目次

ローカルリポジトリの作成

$ git init

各種設定ファイルの.gitディレクトが作成される。

$ git init
Initialized empty Git repository in C:/Users/xxxxxxx/Desktop/git_practice/.git/

gitのユーザー名・メールアドレスの登録

$ git config --global user.name "username"
$ git config --global user.email "user@test.com"

基本情報はgit config で編集し引数の--globalは全体設定。
特定のリポジトリだけ名前・メールアドレスを変更したい場合には--localと指定。

設定した名前やメールを確認する場合には

$ git config --list
user.name=username
user.email=test@test.com

とする。

ファイルの変更について

ステージへの記録・取り消し

記録

$ git add <file name>
$ git add <dir name>
$ git add .

コミットする前段階としてステージに移動する。

$ git add index.html
warning: LF will be replaced by CRLF in index.html.
The file will have its original line endings in your working directory

取り消し

$ git reset HEAD <file name>
$ git reset HEAD <dir name>

全変更を取り消す場合には

$ git reset HEAD

とします。

リポジトリへの記録・取り消し

記録

$ git commit 
$ git commit -m "<message>"
$ git commit -v

変更を記録し、メッセージを記入する。
短い文章の場合は-m、細かく記入したい場合にはそれ以外とするとエディターから記入。

$ git commit -m "first commit"
[master (root-commit) bd4d8ec] first commit
 Committer: self-methods <xxxxxxxx@xxxxxxxx.local>

 1 file changed, 1 insertion(+)
 create mode 100644 index.html

やり直し

$ git commit --amend

直前のコミットをやり直す場合には引数:--amendとします。

変更状況の確認

$ git status

ファイルの変更状況を確認します。

$ git status
On branch master
Your branch is up to date with 'origin/master'.

nothing to commit, working tree clean

もし変更内容がある場合には

$ git status
On branch master

No commits yet

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        index.html

nothing added to commit but untracked files present (use "git add" to track)

untracked filesがあると表示される。

変更の差分を確認する

ワークツリーとステージの変更分

$ git diff
$ git diff <file name>

git add する前の変更を確認するために使用する。

ステージとリポジトリの変更分

$ git diff --staged

引数:--stagedを指定する。

$ git diff --staged
diff --git a/index2.html b/index2.html
new file mode 100644
index 0000000..e69de29

最新コミットとワークツリーの変更分

$ git diff HEAD

変更履歴を確認する

$ git log

git commitでの変更履歴を確認できます。

$ git log
commit 0412cafcd7d2599198f187a37162a75371013c15 (HEAD -> master)
Author: self-methods <xxxxxxxx@xxxxxxxx.local>
Date:   Sat Jan 16 19:59:26 2021 +0900

    second commit

commit bd4d8ecb6355b181fa5dec4fbf25d143086d9c29
Author: self-methods <xxxxxxxx@xxxxxxxx.local>
Date:   Sat Jan 16 19:40:39 2021 +0900

    first commit

1行で表示

$ git log --oneline

コミットを1行ずつ表示されるのでコンパクトになります。

$ git log --oneline
0412caf (HEAD -> master) second commit
bd4d8ec first commit

作業履歴の取り消し

リポジトリにあるファイルの状態に戻すということ。

ワーキングディレクトリを前の状態に戻す

$ git checkout <file_name>

全体を前の状態に戻す場合には

$ git checkout .

ステージングにあるファイルを前の状態に戻す

& git reset <file_name>

ファイルの削除・移動

ファイル自体が不要になった場合

$ git rm <file name>
$ git rm <dir name>

ファイルが不要になった場合にはgit rm <file name>とします。

リポジトリからファイルを削除したい場合

$ git rm --chached <file name>

一方でローカル上には残しておきたいが、リポジトリには削除したいファイルができた場合にはは引数:--cached <file name>とします。

ファイルの移動を記録

$ git mv <old file name> <new file name>

ファイルの移動を記録する場合に用います。

リモートリポジトリについて

リポジトリのコピーの作成

$ git clone <repository name>

githubなどのリモートリポジトリのコピーを持ってくる。

リモートリポジトリを新規登録する

$ git remote add origin <repository url>

originで登録してurlのリモートリポジトリを登録します。

リモートリポジトリへ送信

$ git push <remote name> <branch name>
$ git push origin master

ローカルリポジトリをリモートリポジトリに送ることをプッシュといいます。
プッシュすることにより、リモートリポジトリに変更を反映させます。

リモートリポジトリから変更内容を取り込む

$ git pull origin master

git pullgit fetchgit mergeの処理を一気に行っている。

master→他のブランチに誤って上書きしてしまうおそれがあるため、git fetchgit mergeで分けて行った方が安全。

$ git fetch origin master
$ git merge origin/master

ブランチについて

ブランチを作って、機能の追加やバグ修正毎に分けることにより作業内容を簡単に分けることが出来る。

作業手順としては

  • masterブランチから作業用ブランチを作成
  • コードの修正→push
  • masterにmerge(プルリクエスト)

となります。

ブランチの確認

$ git branch

現在のブランチの状況を確認する。

ブランチの作成

$ git branch <branch_name>

どんな修正・機能追加なのか分かりやすい名称にする。

ブランチへの切り替え

$ git checkout <branch_name>

ブランチを作成し、作成したブランチに移動する場合には

$ git checkout -b <branch_name>

引数に-bを指定する。

ブランチの削除

$ git branch -d <branch_name>

ブランチを削除する場合には、引数に-dを指定する。

ブランチからmasterにmergeする

$ git merge <branch_name>

統合するブランチから、統合したいブランチ名を指定します。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次