Git์ ๊ธฐ์ด๋ฅผ ๋ง์น๊ธฐ ์ ์ Git์ ์ข ๋ ์ฝ๊ณ ํธ์ํ๊ฒ ์ธ ์ ์๊ฒ ๋ง๋ค์ด ์ค Alias ๋ผ๋ ํ ์๋ ค์ฃผ๋ ค ํ๋ค. ์ฐ๋ฆฌ๋ ์ด ์ฑ ์์ ์ด ํ์ ๋ค์ ๊ฑฐ๋ก ํ์ง ์๊ณ ์ด๋ฐ ํ์ ์๊ณ ์๋ค๊ณ ๊ฐ์ ํ๋ค. ๊ทธ๋์ ์๊ณ ์๋ ๊ฒ์ด ์ข๋ค.
๋ช
๋ น์ ์๋ฒฝํ๊ฒ ์
๋ ฅํ์ง ์์ผ๋ฉด Git์ ์์๋ฃ์ง ๋ชปํ๋ค.
Git์ ๋ช
๋ น์ ์ ๋ถ ์
๋ ฅํ๋ ๊ฒ์ด ๊ท์ฐฎ๋ค๋ฉด git config ๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ ๋ช
๋ น์ Alias์ ์ฝ๊ฒ ๋ง๋ค ์ ์๋ค.
์๋๋ Alias์ ๋ง๋๋ ์์ด๋ค.
$ git config --global alias.co checkout
$ git config --global alias.br branch
$ git config --global alias.ci commit
$ git config --global alias.st status์ด์ git commit ๋์ git ci ๋ง์ผ๋ก๋ ์ปค๋ฐํ ์ ์๋ค.
Git์ ๊ณ์ ์ฌ์ฉํ๋ค๋ฉด ๋ค๋ฅธ ๋ช
๋ น์ด๋ ์์ฃผ ์ฌ์ฉํ๊ฒ ๋ ๊ฒ์ด๋ค. ์ฃผ์ ๋ง๊ณ ์์ฃผ ์ฌ์ฉํ๋ ๋ช
๋ น์ Alias์ ๋ง๋ค์ด ํธํ๊ฒ ์ฌ์ฉํ์๊ธธ ๋ฐ๋๋ค.
์ด๋ฏธ ์๋ ๋ช ๋ น์ ํธ๋ฆฌํ๊ณ ์๋ก์ด ๋ช ๋ น์ผ๋ก ๋ง๋ค์ด ์ฌ์ฉํ ์ ์๋ค. ์๋ฅผ ๋ค์ด ํ์ผ์ Unstaged ์ํ๋ก ๋ณ๊ฒฝํ๋ ๋ช ๋ น์ ๋ง๋ค์ด์ ๋ถํธํจ์ ๋ ์ ์๋ค. ์๋์ ๊ฐ์ด unstage ๋ผ๋ Alias์ ๋ง๋ ๋ค.
$ git config --global alias.unstage 'reset HEAD --'์๋ ๋ ๋ช ๋ น์ ๋์ผํ ๋ช ๋ น์ด๋ค.
$ git unstage fileA
$ git reset HEAD -- fileAํ๊ฒฐ ๊ฐ๊ฒฐํด์ก๋ค.
์ถ๊ฐ๋ก last ๋ช
๋ น์ ๋ง๋ค์ด ๋ณด์:
$ git config --global alias.last 'log -1 HEAD'์ด์ ์ต๊ทผ ์ปค๋ฐ์ ์ข ๋ ์ฝ๊ฒ ํ์ธํ ์ ์๋ค.
$ git last
commit 66938dae3329c7aebe598c2246a8e6af90d04646
Author: Josh Goebel <dreamer3@example.com>
Date: Tue Aug 26 19:48:51 2008 +0800
test for current head
Signed-off-by: Scott Chacon <schacon@example.com>์ด๊ฒ์ผ๋ก ์ฝ๊ฒ ์๋ก์ด ๋ช
๋ น์ ๋ง๋ค ์ ์๋ค.
๊ทธ๋ฆฌ๊ณ Git์ ๋ช
๋ น์ด๋ฟ๋ง ์๋๋ผ ์ธ๋ถ ๋ช
๋ น์ด๋ ์คํํ ์ ์๋ค.
! ๋ฅผ ์ ์ผ ์์ ์ถ๊ฐํ๋ฉด ์ธ๋ถ ๋ช
๋ น์ ์คํํ๋ค.
์ปค์คํ
์คํฌ๋ฆฝํธ๋ฅผ ๋ง๋ค์ด์ ์ฌ์ฉํ ๋ ๋งค์ฐ ์ ์ฉํ๋ค.
์๋ ๋ช
๋ น์ git visual ์ด๋ผ๊ณ ์
๋ ฅํ๋ฉด gitk ๊ฐ ์คํ๋๋ค.
$ git config --global alias.visual '!gitk'