11
11

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Gitコマンドの備忘録

11
Last updated at Posted at 2014-10-28

自分用Gitコマンドの備忘録です。
内容は少しずつ追加していきたいと思います。
これいいよ!とか言うものがあればぜひコメントで教えていただけると助かります!

Gitでローカルの変更を元に戻す

  • ファイルの変更をもとに戻す場合
    $ git checkout {{ファイル名}}

  • 特定のファイルではなくすべてのファイルの変更を元に戻したい場合
    $ git checkout .

Aliasの設定

設定方法
ex) statusのalias設定
$ git config --global alias.st = status

コミットを別ブランチにコピーする

  • コミット番号を調べる
    $ git log --oneline --decorate --graph {{branch_name}}

  • コピーしたいブランチに移動
    $ git checkout {{barnch_name}}

  • コミットをコピー
    $ git cherry-pick {{commit_id}}

直前のコミットメッセージを修正する

$ git commit --amend

コンフリクトが起きた時、どちらかを優先させる

  • 自分のコードを優先したい場合
    $ git checkout -ours {{. or /path/to/file}}

  • マージした側のコードを優先したい場合
    $ git checkout -theirs {{. or /path/to/file}}

私のAliasの設定

[alias]コマンドの設定はWindowsでは出来ないので注意!
(別のやり方があれば教えてください)

.gitconfig
[alias]
	st = status
	cm = commit -m
	ad = add
	ps = push
	ft = fetch
	pl = pull
	co = commit
	di = diff
	dic = diff --cached
	br = branch
	bra = branch -a
	sh = show
	so = remote show origin
	cam = commit --amend
	wc = whatchanged
	lp = log -p
	lo = log
	dm = diff master
	gr = grep --color
	gn = grep -n --color
	alias = !git config --list | grep 'alias\\.' | sed 's/alias\\.\\([^=]*\\)=\\(.*\\)/\\1\\\t => \\2/' | sort
	today = log --oneline --since='12 hour ago'
	ch = checkout
	id = log --oneline --decorate --graph

ブランチ間のマージ

ブランチ間のマージ方法です。
ex) testブランチからmasterブランチへのマージ

$ git fetch
$ git checkout master
$ git merge test

マージした際にコンフリクトが発生すると自動コミットされません
コンフリクトが発生しているファイルを確認する場合は、git statusコマンドを打つと、
both modified: file
と表示されているファイルがコンフリクトしているファイルとなります
私はよくコンフリクトを起こしたファイルのみを取り出したいので、
$ git status | grep both
のようにしています

また、コンフリクトを修正後、コミットを行いますが、その際にメッセージを入力せずにコミットすると、
gitが自動的にコミットメッセージを入力してくれます

削除したファイルのインデックス追加

git rmコマンドを使わずにファイルを削除した場合、
通常のgit addコマンドではインデックスに追加することが出来ません

やりかたとしては何種類かあるのですが、
手っ取り早いのはgit add -Aで全ファイルインデックス追加処理を行うことです
ただこれでは、インデックスに追加したくないファイルまで追加されてしまいますので、
その場合はgit add -u /path/to/fileコマンドで追加してあげることが出来ます
私はこれを最近まで知らず、SourceTreeから削除したファイルを
1つずつインデックスに追加してあげてました。。。(´・ω・`)

11
11
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
11
11

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?