我正在尝试向某人发送我的Git存储库中某个分支的当前状态的副本。他不能访问存储库本身,也不需要版本控制历史记录。我也想通过电子邮件发送文件,因此包括过多的历史记录将导致文件太大。
我可以使用-- done =1手动将该分支克隆到一个新文件夹中,然后压缩该文件夹并发送它,但这似乎是一种使用git-bundle完成任务的间接方法。然而,如果我执行git bundle create repo.bundle -1 HEAD,根据https://git-scm.com/docs/git-bundle的说法,它应该只捆绑最近的1次提交,当我试图从捆绑包中克隆来测试它时,我得到了一个590B文件和一个错误:
error: Repository lacks these prerequisite commits:
error: 123456... # example SHA, HEAD~1
fatal: bad object 789101... # example SHA, HEAD
fatal: remote did not send all necessary objects如何从本地存储库中仅获取分支的最新版本?
发布于 2020-09-03 20:15:32
如果你的朋友在他的机器上不需要.git目录,那么你就不需要压缩它。你只需要将你的项目从你所在分支的顶端归档即可。
cd my-project
git checkout my-feature-to-share
zip -r my-project.zip .这将产生一个档案,你可以自由地分享给你的朋友。如果不希望共享.git文件夹,可以使用-x选项将其排除。
https://stackoverflow.com/questions/63723386
复制相似问题