Outsider's Dev Story

Stay Hungry. Stay Foolish. Don't Be Satisfied.
RetroTech 팟캐스트 44BITS 팟캐스트

git에서 push하지 않은 커밋 확인

git은 svn과는 달리 commit을 한 뒤에 나중에 모아서 push를 하기 때문에 작업을 하다보면 어디까지 푸시를 했는지 헷갈리는 경우가 있습니다. 브랜치를 왔다갔다 하면서 작업하면 더 헷갈리기 마련인데 물론 git status에서 푸시하지 않은 커밋의 수가 나타나기는 합니다.

명령어로도 이를 확인할 수 있는데 다음과 같이 사용합니다.

git log --branches --not --remotes

--branches는 ref/heads에 있는 모든 커밋을 보여주는 옵션이고(패턴을 주면 브랜치를 제한할 수 있습니다.) --remotesref/remote에 있는 모든 커밋을 보여주는 옵션입니다.(패턴을 주면 마찬가지로 원격브랜치를 제한할 수 있습니다.) --not이 붙었으므로 원격에 없는 모든 커밋이 출력됩니다.

git log --branches --not --remotes 실행한 화면

위처럼 푸시하지 않은 모든 커밋을 확인할 수 있고 git log에서 사용할 수 있는 다양한 옵션을 같이 사용할 수 있습니다. --oneline --graph --decorate를 사용하면 다음과 같이 출력됩니다.

--oneline --graph --decorate 를 추가해서 실행한 화면

2012/08/11 23:39 2012/08/11 23:39