プログラミング/git の変更点
更新- 追加された行はこの色です。
- 削除された行はこの色です。
- プログラミング/git へ行く。
- プログラミング/git の差分を削除
[[公開メモ]]
* 概要 [#x45859d7]
git についての備忘録的メモです。
* alias [#x821df63]
https://git.wiki.kernel.org/index.php/Aliases ここにも参考になる物がいっぱいある。
** git s [#bacfadbd]
s = status
** git l, git la [#yf186d02]
l = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative
la = log --graph --all --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative
** git d [#kfb7cbb6]
履歴選択リスト付きの git diff
リストが表示された状態のまま Enter を押せば、普通に git diff と打ったのと同様に HEAD と working copy との間の差分をとる
履歴を1つ選んで Enter を押せば、その履歴と working copy との差分を取る
Ctrl+space で2つ選べば、その間の差分を取る
d = !git diff --minimal --ignore-all-space `git log --oneline --branches | peco | ruby -e 'STDIN.readlines.reverse.each{|s| puts s[0..6]}'`
** git add-file [#v99e3026]
git add するファイルを一覧から選ぶ
add-file = "!if [ \"`git status --porcelain | grep -E '^.[^ ]'`\" != \"\" ]; then git add `git status --porcelain | grep -E '^.[^ ]' | peco | sed -e 's/.* //'`; fi"
** git reset-file [#tf9d5f47]
git reset するファイルを一覧から選ぶ
reset-file = "!if [ \"`git status --porcelain | grep -E '^[^\\? ]'`\" != \"\" ]; then git reset `git status --porcelain | grep -E '^[^\\? ]' | peco | sed -e 's/.* //'`; fi"
** git tag-date [#be3ffd5e]
git tag のリストに日付をつける
tag-date = "tag-date="for-each-ref --sort=-taggerdate --format='%(taggerdate:short) %(tag) %(taggername) %(subject)' refs/tags"
http://qiita.com/naoty_k/items/2b9d9560381bbe316818 より
* 現在の .gitocnfig [#z5823ece]
[alias]
s = status
co = checkout
l = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)< %an>%Creset' --abbrev-commit --date=relative
la = log --graph --all --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative
tag-date="for-each-ref --sort=-taggerdate --format='%(taggerdate:short) %(tag) %(taggername) %(subj ect)' refs/tags"
# SYNTAX: git d
#
# 履歴一覧を表示して選択した履歴との diff を取る
# 初期状態のまま Enter を押せば単に git diff と打ったのと同様に HEAD と working copy との間の差分を とる
# 履歴を1つ選んで Enter を押せば、その履歴と working copy との差分を取る
# Ctrl+space で2つ選べば、その間の差分を取る
#
d = !git diff --minimal --ignore-all-space `git log --oneline --branches | peco | ruby -e 'STDIN.re adlines.reverse.each{|s| puts s[0..6]}'`
# SYNTAX: git add-files
#
# git add するファイルを peco で選択する
add-files= "!if [ \"`git status --porcelain | grep -E '^.[^ ]'`\" != \"\" ]; then git add `git stat us --porcelain | grep -E '^.[^ ]' | peco | sed -e 's/.* //'`; fi"
# SYNTAX: git rm-files
#
# git rmするファイルを peco で選択する
rm-files= "!if [ \"`git status --porcelain | grep -E '^.[^ ]'`\" != \"\" ]; then git rm `git status --porcelain | grep -E '^.[^ ]' | peco | sed -e 's/.* //'`; fi"
# SYNTAX: git reset-files
#
# git reset するファイルを peco で選択する
reset-files = "!if [ \"`git status --porcelain | grep -E '^[^\\? ]'`\" != \"\" ]; then git reset `g it status --porcelain | grep -E '^[^\\? ]' | peco | sed -e 's/.* //'`; fi"
* コメント・質問 [#o5c9abb1]
#article_kcaptcha
Counter: 4602 (from 2010/06/03),
today: 2,
yesterday: 0