项目开发中,经常会把一些不该提交的配置文件、环境文件提交到远程仓库,删除远程仓库文件,是个常见操作。
要求:删除远程仓库的文件但是保留本地文件
其实操作就是:删除本地暂存区Index的文件,保留工作区的文件,然后commit再push到远程仓库。
具体操作步骤如下:
1. 预览将要删除的文件
git rm -r -n --cached 文件/文件夹名称
加上 -n 这个参数,执行命令时,是不会删除任何文件,而是展示此命令要删除的文件列表预览,确定无误后删除文件。
文件名可以使用匹配字符“*” 如:git rm -r -n --cached */src/\*
2. 正式删除
git rm -r --cached 文件/文件夹名称
提交到本地并推送到远程服务器
3. 将暂存区的变化提交到本地仓库
git commit -m "提交说明"
4. 将本地仓库的变化提交到远程仓库
git push origin master
5. 同时看你是否修改本地 gitignoer文件,增加忽略的文件,避免再次提交不应该提交的文件
修改本地 .gitignore 文件 并提交
git commit -m "提交说明"
git push origin master