Git 에서 commit을 하기 위해서는 그 이전에 staged 상태로 만들어야 한다고 앞서서 말했다.
즉, "git add"를 먼저 해야하는 것이다.
"git add"는 하나의 파일만 할 수도 있고, 다수의 파일을 할 수도 있다.
이럴 때에 만약, "git add ."를 통해서 다수의 파일을 staged 상태로 했는데,
그 중에서 특정 파일을 제외하고 싶을 때에는 어떻게 해야할까?
우선은 소스 파일의 2개를 수정해보았다.
위 이미지를 보면 "aviParser.py", "readme.txt" 2개의 파일을 수정해 놓은 상태이다.
수정을 한 파일들 일체를 한 번에 일괄 staged 상태로 만들어보자.
$ git add . |
수정 후 staged 상태로 만든 파일들 중에서 "aviParser.py" 파일을 unstaged 상태로 만들고 싶은 상황이라면,
"git reset HEAD 해당파일" 명령어를 입력하면 된다.
$ git reset HEAD ./aviParser.py |
지금 상황(status)을 보면 "aviParser.py" 파일이 unstaged 상태로 된 것을 확인할 수 있을 것이다.
"git reset HEAD" 명령어는 해당 파일을 "staged" 상태에서 "unstaged" 상태로만 변경시킨다.
파일 자체에 대해서는 어떤 변경도 가하지 않는다.
반응형
'SCM > Git-GitHub' 카테고리의 다른 글
Git Remote Repository (git init --bare) (0) | 2012.02.11 |
---|---|
Undo - Unmodify (변경 취소 - git checkout --) (0) | 2012.02.08 |
Git 도우미 - TortoiseGit (in Windows) (0) | 2012.02.05 |
One Shot - commit (2) | 2012.01.22 |
git Review - stage, add, commit (0) | 2012.01.19 |