首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用git-archive导出特定的提交?

如何使用git-archive导出特定的提交?
EN

Stack Overflow用户
提问于 2012-06-13 23:34:31
回答 2查看 35.2K关注 0票数 23

我以前问过类似的问题,但回答得不够充分,所以我想在这里再问一次,但提供更多信息。我需要获取不同版本和较旧版本的git存储库,但我在这方面遇到了问题。我试过的是

代码语言:javascript
复制
git checkout master~X 

git archive --format zip --output /full/path/to/zipfile.zip master 

git checkout master 


git checkout master~Y 

git archive --format zip --output /full/path/toDifferent/zipfile.zip master 

git checkout master 

在解压缩后,它们最终是完全相同的。我不知道为什么或者怎么解决这个问题。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-06-14 00:24:00

问题所在

在这两个示例中,您都是在导出master的提示。拿出你的旗帜和参数,你就得到了:

代码语言:javascript
复制
git archive master

换句话说,通过将存储在.git/refs/heads/master中的任何内容指定为树状结构,您就是在显式地对自己执行此操作。

解决方案

如果您想导出不同的提交,则需要提供与gitrevisions(7)一致的树状结构。例如,要导出提交29435bc,您可以指定:

代码语言:javascript
复制
git archive --format zip --output /full/path/to/zipfile.zip 29435bc
票数 46
EN

Stack Overflow用户

发布于 2018-01-30 18:24:15

分辨率

这是最新版本Git的预期行为。远程Git存储库不允许客户端访问任意SHA1s。请求的对象应由ref (即文件名)访问。

git-upload-archive-archiver-died-with-error

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11018411

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档