控件中列出的文件。还在仓库里吗?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (5)
  • 关注 (0)
  • 查看 (68)

是否有一个使用过滤器分支的命令或脚本可以重写我的历史记录并轻松删除所有这些文件?

提问于
用户回答回答于

git将忽略匹配的文件:

使用git rm files_ignored; git commit -m 'rm no use files'

用户回答回答于

做了一个非常简单的解决方案,Ggitignore语句和sed:

cat .gitignore | sed '/^#.*/ d' | sed '/^\s*$/ d' | sed 's/^/git rm -r /' | bash

用户回答回答于

作为文件.gitignore没有被跟踪,

使用git clean -xdn执行试运行,并查看哪些内容将被删除。

然后使用git clean -xdf执行它

用户回答回答于

在任何操作系统上正常运行的一种方法是:

git rm -r --cached .
git add .
git commit -m "Removing all files in .gitignore"

基本上可以读取所有的文件

用户回答回答于

可以手动从存储库中删除它们:

git rm --cached file1 file2 dir/file3

或者,如果有很多文件

git rm --cached `git ls-files -i --exclude-from=.gitignore`

但这在Windows上的Git Bash中似乎不起作用。以下措施可以办到:

git ls-files -i --exclude-from=.gitignore | xargs git rm --cached  

所属标签

可能回答问题的人

  • 爸爸

    腾讯 · 客户端安全 (已认证)

    4 粉丝4 提问5 回答
  • 找虫虫

    0 粉丝0 提问5 回答
  • 不吃貓的鱼oo

    5 粉丝466 提问4 回答
  • uncle_light

    5 粉丝518 提问4 回答

扫码关注云+社区

领取腾讯云代金券