답변:
당신이 원하는 :
git rm --cached [file]
--cached
옵션 을 생략 하면 작업 트리에서도 옵션이 삭제됩니다. 준비된 콘텐츠가 분기의 끝 또는 디스크의 파일과 일치하지 않으면 경고 메시지가 표시되므로 git rm
보다 약간 안전 git reset
합니다. (그렇지 않으면을 추가해야합니다 --force
.)
git rm --cached
의 REPO에서 제거 .gitignore, 무대에 관련 파일이나 디렉토리를 추가하고 정상적으로 커밋합니다. 그들은 리포지토리에서 사라지지만 로컬 트리에서 그대로 유지되며 실수로 다시 체크인하지 않습니다.
파일을 제거하거나 수정하지 않고 <file>의 스테이지를 해제해야합니다.
git reset <file>
HEAD
.
HEAD
!
워크 플로에 따라, 이것은 명령 줄 솔루션을 알아 내려는 데 거의 도움이되지 않을 정도로 거의 필요하지 않을 수도 있습니다 (어떤 이유로 그래픽 인터페이스없이 작업하지 않는 한).
인덱스 관리를 지원하는 GUI 기반 도구 중 하나를 사용하십시오 (예 :
git gui
<-Tk 윈도우 프레임 워크를 사용합니다. gitk
git cola
<-보다 현대적인 GUI 인터페이스포인트 앤 클릭으로 인덱스 안팎으로 파일을 이동할 수 있습니다. 또한 파일의 일부 (개별 변경)를 선택하거나 인덱스에서 이동하는 기능도 지원합니다.
다른 관점은 어떻습니까? 제안되고 다소 비밀스러운 명령 중 하나를 사용하는 동안 엉망이되면 :
git rm --cached [file]
git reset HEAD <file>
... 실제로 데이터를 잃어 버리거나 최소한 찾기가 어려울 수 있습니다. 매우 높은 빈도로이 작업을 수행해야하는 경우가 아니라면 GUI 도구를 사용하는 것이 더 안전 할 것 입니다.
의견과 투표를 바탕으로 많은 사람들이 항상 색인을 사용한다는 것을 알게되었습니다. 난 아니야 방법은 다음과 같습니다.
git commit -a
git commit (list of files)
git commit -a
다음을 통해 수정git gui
git difftool --dir-diff --tool=meld
rm
것이지만 지점을 전환해도 무시 된 폴더는 죽이지 않을 것이라고 생각했습니다 . 그러나 ... 나는 나를 위해 충분히 좋은 github "gui based"도구를 사용하고 이것을 지원하지 않는 것을 제외하고 일부 색인 관리를 지원합니다. 좁은 사용을 위해 2 GUI를 사용해야합니까? 여전히 대답에 동의 할 수 없습니다.