背景:想删除一个git目录里的文件,当时提交了,但想删除master里的,怎么办?
git rm -r -n --cached *
git rm -r --cached *
git commit -m"移除src目录下所有文件的版本控制"
git push origin master
[xiangdong@localhost SPEC]$ git rm SPECS -r
fatal: pathspec 'SPECS' did not match any files
这个文件没有存在git中,不需要用git的命令去删除。直接rm 命令删除吧。
由于本地修改了文件夹大全名大小写的原因,同步到git上并不区分大小写,造成了一些文件同步不了,所以要先把git远程库上文件夹删除掉,然后再重新同步
如下,我把src里的全部移除,但是本地文件还保留。
git rm -r -n --cached */src/\* //-n:加上这个参数,执行命令时,是不会删除任何文件,而是展示此命令要删除的文件列表预览。
git rm -r --cached */src/\* //最终执行命令.
git commit -m"移除src目录下所有文件的版本控制" //提交
git push origin master //提交到远程服务器
若用git status命令查看,则/src/目录下文件出现在结果列表里, 我们不希望这个目录下的文件出现,则在项目根目录下,和.git 同级目录下,新建一个.gitignore文件,
把.gitignore提交到远程服务器。 则/src目录就不会被提交了。
来自:http://www.cnblogs.com/xusir/p/4111723.html