我没有使用.gitignore忽略项目中的文件,例如编译后的二进制文件,因此这些编译后的二进制文件已提交到Git存储库中。现在,我将.gitignore添加到我的项目中。我想重建整个Git存储库,而忽略.gitignore中列出的文件,而不会丢失任何历史记录。我怎样才能做到这一点?
如果刚刚添加了这些二进制文件,请从当前缓存中删除它们。
git rm --cached abinary
然后,您的.gitignore
遗嘱将自动忽略那些二进制文件。
但是,如果它们是在过去的提交中提交的,则您不会丢失历史记录,但是您仍然需要从所述提交中删除那些二进制文件。
您将需要git filter-branch
或bfg回购清洁器。
这将重写您的历史记录,并且您需要一个git push --force
,因此,如果您有多个(您自己)的协作者,请提前警告他们。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句