Git / GitHub를 사용하여 파일 삭제


115

우선, 저는 Git을 처음 사용합니다.

Finder를 사용하여 Mac에서 로컬로 여러 파일을 삭제했습니다. 삭제 한 파일이 더 이상 현재 브랜치에 표시되지 않도록하고 싶지만 실제로 표시됩니다.

Git 사용자가 색인을 업데이트하는 명령을 알고 있습니까?


답변:


226

나는 이것이 당신이 원하는 것을하는 더 간단한 방법이라고 생각합니다.

git add . -A 

그런 다음 다음을 수행합니다.

git commit -m "removed some files"

위에서 언급했듯이.


감사합니다. 그리고 bash위의 작업을 수행하기 위해 방금 별칭을 작성했습니다 . 놀랄 만한.
Zack

12
-A 플래그는 무엇을합니까?
김 왕자

1
@KimPrince -에 따르면 kernel.org , "-A --all -u처럼,하지만 <filepattern> 인덱스에 추가하여 작업 트리에있는 파일은 새 파일을 찾을 수 있다는 그 말에 대한뿐만 아니라 준비 수정 내용을 일치합니다. 더 이상 작업 트리에없는 파일을 제거합니다. "
j08691

3
@KimPrince git help add-A의미 를 알려주고 다른 모든 스위치도 나열합니다.
Marcin Orlowski

1
이것은 삭제 된 파일을 제거하는 것 이상을 수행합니다. 디렉토리에서 변경된 모든 파일을 추가하므로 만족스러운 답변이 아닙니다.
Alex

19

다음과 같이 '추적'되는 삭제 된 파일을 볼 수 있습니다.

git ls-files --deleted

브랜치에서 파일을 삭제하려면 다음과 같이 할 수 있습니다.

git ls-files --deleted -z | xargs -0 git rm

에서 man git-rm:

색인 또는 작업 트리 및 색인에서 파일을 제거하십시오. git-rm은 작업 디렉토리에서만 파일을 제거하지 않습니다. (작업 트리에서만 파일 13을 제거하고 색인에 유지하는 옵션은 없습니다. 그렇게하려면 / bin / rm을 사용하십시오.)

마지막으로 "제거"를 수행하려면 다음과 같이하십시오.

git commit -m "removed some files"

그런 다음 변경 사항을 커밋해야합니다.git commit -m "removed some files"
James Polley

17

이전 답변 이후 git에 추가되었는지 모르겠지만 방금 사용했습니다.

git add -u
git commit -m "Removed some files"

같은 것을 달성하기 위해.


이는 나열된 사용 사례에서 작동하지만 파일 삭제 만 추가하는 것은 아닙니다. 어떤 방식 으로든 변경된 모든 파일을 추가하기 때문에, 이것이 유일한 변경 사항이 아니라면 일반적으로 삭제 된 모든 파일을 제거하는 좋은 방법이 아닙니다.
Alex

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.