首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >git -仅获取文件,而不获取历史记录

git -仅获取文件,而不获取历史记录
EN

Stack Overflow用户
提问于 2013-04-15 16:53:42
回答 3查看 2.3K关注 0票数 5

当我运行git pullgit fetch时,我显然会检索历史记录和文件。对于大型项目,这需要很长时间。我想知道如何加快这一过程,因为对于一些项目,我只对源代码感兴趣,而对历史不感兴趣。有没有办法告诉git,我只想获取文件的当前快照,而不是整个历史?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-04-15 17:11:12

您可能想看看git clone中的--depth选项--称为“浅层克隆”。具体地说,您可能需要:

代码语言:javascript
复制
git clone --depth=1 <url>

如果项目在GitHub上,您可以随时使用那里的下载链接。请注意,使用浅克隆有一些注意事项:

使用截断到指定修订数的历史记录创建浅克隆。浅存储库有许多限制(您不能从它克隆或获取,也不能从它推入或推入),但如果您只对具有较长历史的大型项目的最近历史感兴趣,并且希望将修复作为补丁发送,则它就足够了。

但这听起来像是你可以接受的。

此外,正如positron所指出的,您也可以使用git archive来实现这一点。

票数 15
EN

Stack Overflow用户

发布于 2013-04-15 17:09:16

您可以使用浅克隆

代码语言:javascript
复制
git clone --depth=1 git://url/of/repo

但是,您将无法提交/推送在浅克隆中所做的更改。

票数 3
EN

Stack Overflow用户

发布于 2013-04-15 17:13:39

如果有像gitweb或cgit这样的well视图,你可以很好地拍摄快照。但我不认为单独获取代码是可能的。因为fetch是在git对象上工作的,而不是在代码上工作的。

代码语言:javascript
复制
git archive --format=tar --remote=gitolite@server:repo.git HEAD | bzip2 > repo-snapshot.tar.bz2
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16011184

复制
相关文章

相似问题

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