본문 바로가기

Programming/General

Git 유용한 명령어들

commit 한 내용을 roll back 하기


local repository 에 마지막 commit 을 날릴 수 있다.

git reset --hard HEAD^


git reset HEAD^^^


"^" 의 갯수만큼 back 으로 돌아가나.. 파일자체는 원본으로 남아있어서 해당 파일이 modified 상태가 된다.

위 상태에서 아래와 같이 --head 옵션을 주면, 서버의 상태로 파일이 원복된다.


git reset --hard HEAD


위 두 명령어를 합치면 아래와 같다.

git reset --hard HEAD^^^




git status 에서 modified file 이 붉은 색으로 표시된다면 아직, add 가 안되어 workspace 에서 stage 로 가지 못한 것이다.

아래 문구도 유심히 보면 된다.


no changes added to commit (use "git add" and/or "git commit -a")

$ git status

On branch products/v11.1/master

Your branch is ahead of 'origin/products/v11.1/master' by 1 commit.

  (use "git push" to publish your local commits)


Changes not staged for commit:

  (use "git add <file>..." to update what will be committed)

  (use "git checkout -- <file>..." to discard changes in working directory)


        modified:   ./aaaa.c


no changes added to commit (use "git add" and/or "git commit -a")



$ git add ./aaaa.c


$ git status

On branch products/v11.1/master

Your branch is ahead of 'origin/products/v11.1/master' by 1 commit.

  (use "git push" to publish your local commits)


Changes to be committed:

  (use "git reset HEAD <file>..." to unstage)


        modified:   ./aaaa.c