放弃git提交而不回滚文件

0sgqnhkj  于 2022-11-20  发布在  Git
关注(0)|答案(1)|浏览(166)

我 有 一 个 Git repo 包含 一些 大 的 数据 集 , 我 不 小心 输入 了 add . , 导致 git 总是 试图 把 整个 数据 集 推 到 git 服务 器 上 。 我 已经 在 这个 项目 上 工作 了 半年 , 没有 把 任何 东西 推 到 Github 。
现在 我 想 放弃 这次 提交 , 只 推送 我 写 的 代码 。 但是 git 不 允许 我 在 没有 完成 上次 提交 的 情况 下 这样 做 。 我 也 不 想 丢失 我 写 的 代码 。
如何 解决 ?
Git 状态

hundred of lines for my previous commit

no changes added to commit (use "git add" and/or "git commit -a")

中 的 每 一 个
Git 推送

Enumerating objects: 2343, done.
Counting objects: 100% (2343/2343), done.
Delta compression using up to 12 threads
Compressing objects: 100% (1795/1795), done.
remote: fatal: pack exceeds maximum allowed size (2.00 GiB)error: RPC failed; curl 92 HTTP/2 stream 0 was not closed cleanly: CANCEL (err 8)

send-pack: unexpected disconnect while reading sideband packet
Writing objects: 100% (2341/2341), 2.60 GiB | 5.96 MiB/s, done.
Total 2341 (delta 574), reused 2208 (delta 543), pack-reused 0
fatal: the remote end hung up unexpectedly
Everything up-to-date

格式
我 想 试试 git reverse , 但 它 可能 会 删除 我 代码 。

nkcskrwz

nkcskrwz1#

有一个工具可以帮助您做到这一点:git filter-repolink to github page)。请阅读首页以了解如何安装它。
在“示例”部分中有一个指南,可帮助您准确地执行所需的操作:
部分历史记录重写
例如,要从主分支中删除名为extraneous.txt的文件:

git filter-repo --invert-paths --path extraneous.txt --refs master

相关问题