用了一段时间git了,一直有个问题没解决。当做了一些修改时,一般会直接 "git add ." 先将文件staged起来。
但是"git add ."对被删除的内容是无效的,还需要"git rm filename"删除文件,但是git rm命令貌似没有类似"git rm ."的用法(这样可以执行,但意思是删除所有文件),于是,当有比较大量的文件被删除时,一个个的git rm非常麻烦。。我现在基本上都是到gui的git(比如mac的Tower)中全选,批量Stage搞定,但是,命令行下面如何做比较方便呢,难道要自己写个脚本?
으아악
git rm을 통해 삭제하지 않은 모든 파일을 스테이징합니다
사용할 수 있는
git commit -a
도 있습니다. 기본적으로 삭제된 파일은 자동으로 표시되지만 새 파일은 작동하지 않습니다Git에서는 glob 패턴 와일드카드를 사용할 수 있습니다. Git에는 자체 파일 패턴 확장자 일치 방법도 있습니다. 예를 들어 git rm *.c는 현재 디렉터리와 모든 하위 디렉터리에서 .c로 끝나는 파일을 반복적으로 삭제합니다. git rm *.c는 현재 디렉터리의 .c 파일만 삭제합니다.
저도 이전에 원본 포스터의 문제를 접한 적이 있어서 오랫동안 혼란스러워서 매번 수동으로 캐시 파일을 지워야 했습니다.
바이두는 오늘 원본 포스터를 가봤는데 답을 못찾다가 우연히 필요성이 생겨서 고민하다가 방법을 찾았습니다.
1. 먼저 캐시에 있는 파일을 삭제하세요.
git rm -r --디렉토리를 캐시했습니다
2. 모든 파일을 캐시에 다시 추가하세요
자식 추가 .
git rm * -f는 현재 git 프로젝트 아래의 모든 파일(모든 디렉터리 포함)을 삭제합니다