我想删除所有提交历史,但保持代码处于当前状态。如何删除github中的所有提交历史记录?
因为在我的提交历史中,有太多未使用的提交。
我该怎么办?
有没有任何git命令可以做到这一点?
git filter-branch ?
git rebase ?
...
我的代码在github.com上的主机。
我想删除所有提交历史,但保持代码处于当前状态。如何删除github中的所有提交历史记录?
因为在我的提交历史中,有太多未使用的提交。
我该怎么办?
有没有任何git命令可以做到这一点?
git filter-branch ?
git rebase ?
...
我的代码在github.com上的主机。
删除.git
文件夹可能会导致您的git存储库出现问题。如果你想删除所有提交的历史,但保持代码在当前状态下,它是很安全的做如下所示:
结帐
git checkout --orphan latest_branch
添加所有文件
git add -A
提交更改
git commit -am "commit message"
删除分支
git branch -D master
命名当前分支掌握
git branch -m master
最后,力更新你的资料库
git push -f origin master
PS:这会不会让你的旧提交历史周围
如果您确定要删除所有提交历史记录,只需删除项目根目录下的.git
目录(请注意它已隐藏)。然后在同一文件夹初始化一个新的存储库,并将其链接到GitHub的库:
git init
git remote add origin [email protected]:user/repo
现在提交您的当前版本的代码
git add *
git commit -am 'message'
终于迫使更新到GitHub的:
git push -f origin master
但是,我建议在执行这些步骤之前备份历史记录(存储库中的.git
文件夹)!
我可以在此之后使用分叉存储库执行请求吗? – rraallvv
的确很棒。 :) 0.克隆:'git clone https:// github.com/blahblah/blahblah' :) – pidosaurus
@rraallvv不,你会说:*没有什么可比较的,master和x分支有完全不同的提交历史。当您强制推送时,Github上的拉取请求会自动关闭 – NoNameProvided