Arv*_*vin 4 git version-control bitbucket git-lfs
所以这就是发生的事情:
git reset --soft HEAD~2在事故发生之前做了回复我假设git reset会从意外提交中撤消所有内容,但是在检查了bitbucket的git lfs文件列表之后,似乎所有来自意外提交的lfs跟踪文件都被推送到lfs in origin.如果我查看bitbucket中的源代码,这些文件就不存在了.
所以我试着git lfs prune删除一些看起来与意外提交的数量相关的文件git lfs push origin master.再次检查了bitbucket的git lfs文件列表,但这些文件仍然存在且原始状态没有任何变化.
我做错了什么?
Git LFS命令行客户端不支持从服务器修剪文件,因此删除它们的方式取决于您的托管服务提供商.
Bitbucket 允许您使用其Web UI删除LFS文件(请在继续之前阅读整个链接页面):
从存储库中删除单个LFS文件
了解这一点很重要:
- 这里描述的删除操作是破坏性的 - 没有办法恢复被删除的LFS指针文件引用的LFS文件(它不像git remove命令!) - 所以你需要先备份LFS文件.
- 删除LFS文件只会将其从远程存储中删除.存储在Git仓库中的所有参考指针都将保留.
- 今后没有分支,标签或修订版能够引用LFS文件.如果您尝试签出包含引用已删除的LFS文件的指针文件的分支,标记或修订,您将收到下载错误,并且签出将失败.
存储库管理员可以从存储库中删除Git LFS文件,如下所示:
- 转到repo的Settings页面,然后单击Git LFS以查看该repo中所有LFS文件的列表.
- 使用操作菜单删除LFS文件.
令人惊讶的是,从GitHub中删除LFS文件的唯一方法似乎是删除并重新创建存储库,丢失问题,星号,分叉以及可能的其他数据.