2016-05-17 182 views
1

我已经将生成文件夹推送到我的远程回购;但.gitignore文件显然有这一行(/ payu_ui/build);但我发现,因为构建文件已被追踪过一次,现在我在.gitignore中写了一行,并不会真正忽略构建文件夹。所以我想从git的被跟踪(完整版文件夹)中删除它,所以我用这个命令从git中删除生成文件夹

git filter-branch --index-filter 'git rm -r --cached --ignore-unmatch payu_ui/build/' --prune-empty --tag-name-filter cat -- --all 

但我每次运行此命令时,它给出了一个ERR说

fatal: bad revision 'rm' 

时间那么什么出错了;每次我点击从IDE提交选项,则表明需要提交1300个文件(其讨厌我)

When commit is cliked from IDE

任何帮助将不胜感激;
1.我不想跟踪这些构建文件(来自payu_ui lib) 2.我不想将它们推送到远程回购(但它已经thr和beleive一旦我从本地跟踪,并推动它们被删除在远程回购;如果没有,我会手动远程回购删除)

回答

9

那么你可能只是做到以下几点,

  • 取下gitignore行现在。
  • 本地删除该文件夹。
  • 推出更改,以便从远程删除文件夹。
  • 现在将该行添加到gitignore。

我最近遇到了问题,那就是我所做的。

+0

我可以删除我的生成文件夹在本地,不会影响? – DJphy

+0

是在本地删除文件夹并提交更改。然后推出。这将从远程删除文件夹。然后继续,将该行添加到gitignore,以便将来不会发生。 –

+0

我在上面;我会更新,如何知道该文件夹是否被删除?在运行rm -r -f <文件夹到del>后,我仍然可以在IDE中看到该文件夹​​;请指导我 – DJphy

2

删除那些从计算机中生成文件(或整个文件夹)

rm -r [direction to files] 

然后添加,提交和推送所有更改(实际上的变化将消除从库中的文件),如果设置.gitignore 文件正常,git将停止跟踪这些文件