よく使うgitコマンド
git init [<ディレクトリ名>]
リポジトリの初期化を行います。 対象のディレクトリを git の対象とする場合に実行します。 コマンドを実行すると対象のディレクトリ配下に .git ディレクトリが作成され、その中に各種設定ファイルが設置されます。
. └── .git ├── HEAD ├── branches ├── config ├── description ├── hooks │ ├── applypatch-msg.sample │ ├── commit-msg.sample │ ├── post-commit.sample │ ├── post-receive.sample │ ├── post-update.sample │ ├── pre-applypatch.sample │ ├── pre-commit.sample │ ├── pre-rebase.sample │ ├── prepare-commit-msg.sample │ └── update.sample ├── info │ └── exclude ├── objects │ ├── info │ └── pack └── refs ├── heads └── tags
ディレクトリ名を指定していない場合、現在位置しているディレクトリが管理対象として初期化されます。
【実行例】
$ cd /path/to/my/codebase/ $ git init Initialized empty Git repository in /path/to/my/codebase/.git/
git status
リポジトリの現在のブランチや、追加・変更・削除されたファイルなどといった情報を確認することができます。
個人的には、git add
や git commit
する際に確認することが多いです。
【実行例】
$ git status # On branch master # Untracked files: # (use "git add <file>..." to include in what will be committed) # # print.rb nothing added to commit but untracked files present (use "git add" to track)
git --global
git --system
git add .gitignore
git clone
git branch
ブランチ一覧の確認や現在位置しているブランチを確認することができます。 (アスタリスク(*)が付いているものが現在位置しているブランチです。)
【実行例】
$ git branch 20150701 * master
git branch <ブランチ名>
ブランチの生成
指定した名前でブランチが生成されます。
git checkout
-b master
git checkout
git checkout <ブランチ名>
git clone gitrepo <リポジトリ名>
git checkout -b <ブランチ名>
git commit --amend
コミットを再度やり直します。
git config [--system|--global] user.email <メールアドレス>
メールアドレスを設定します。
--system
を指定した場合、/etc/gitconfig に保存され、システム共通の設定として適用されます。
--global
を指定した場合、~/.gitconfig に保存され、ユーザ個別の設定として適用されます。
git config [--system|--global] user.name <ユーザ名>
ユーザ名を設定します。
--system
を指定した場合、/etc/gitconfig に保存され、システム共通の設定として適用されます。
--global
を指定した場合、~/.gitconfig に保存され、ユーザ個別の設定として適用されます。
git diff HEAD
ワークツリーと最後のコミットの差分を表示します。
git diff <ファイル名1> <ファイル名2>
指定したファイルの差分を表示します。
git log
コミット履歴を確認する際に使用します。
-p <数字>
オプションを使用すると、指定した<数字>の件数分のみコミット履歴が表示されます。
【実行例】
$ git log commit 79077d0f6cd0f803560e303edaa9a0e28893bbb2 Merge: 92882ea c0183cf Author: ****** Date: Fri Jun 26 04:36:20 2015 +0900 Merge pull request #1 from ******/branch-demo はじめてのコミット ...
git merge <ブランチ>
指定したブランチを現在のブランチにマージします。
git push {
or } <ブランチ名>
【実行例】
git push origin master
git rebase -i HEAD~~
コミットを修正します。
git rebase -i <ブランチ名>~<数字>
git remote
リモートサーバの一覧が表示されます。
何も設定していない場合、origin
のみが表示されます。
git remote add
で追加することができます。
【実行例】
$ git remote origin
git remote -v
設定されているリモートサーバの URL など詳細情報を確認する際に使用します。
【実行例】
$ git remote -v origin <GitHub Clone URL> (fetch) origin <GitHub Clone URL> (push)
git remote add
リモートサーバを追加します。 指定した を使用してコマンド実行等をできるようになります。 設定した値は、 git remote -v
コマンドで確認できます。
git remote set-url origin
origin の URL を指定した git remote -v
コマンドにより確認することができます。
git reset --soft HEAD^
一つ前のコミットを取り消します。 ワークツリーについては、何もしません。
git reset --hard HEAD^
一つ前のコミットを取り消します。 ワークツリーについても、取り消します。