我想复制 github 存储库的当前工作副本。
澄清一下:我不想复制一个项目的整个存储库和整个历史。我不关心历史。
我只是想“签出”当前状态的工作副本以在本地编译。
尽管这看起来应该很简单,但我还没有找到任何关于此的内容。一切似乎都是为了获得所有数据的完整历史副本,而这不是我感兴趣的。
如何才能做到这一点?
我想复制 github 存储库的当前工作副本。
澄清一下:我不想复制一个项目的整个存储库和整个历史。我不关心历史。
我只是想“签出”当前状态的工作副本以在本地编译。
尽管这看起来应该很简单,但我还没有找到任何关于此的内容。一切似乎都是为了获得所有数据的完整历史副本,而这不是我感兴趣的。
如何才能做到这一点?
--depth
您可以使用to 选项做您想做的事情git clone
。
--depth <depth>
创建一个浅克隆,其历史被截断为指定的修订数。浅层存储库有许多限制(您不能克隆或从中获取,也不能从中推送或进入),但如果您只对历史悠久的大型项目的近期历史感兴趣,并且想要作为补丁发送修复。
请注意限制,这对于一次性构建可能没有问题。
例如
$ git clone --depth=1 https://github.com/libgit2/libgit2.git $ 混帐日志 提交 97d32abb492f7830f6e26719ce558429f6377b73 作者:卡洛斯·马丁·涅托 日期:2013 年 10 月 30 日星期三 15:09:32 +0100 删除剩余的函数声明
“当前工作副本”已签出目录,可能包含本地更改。您可以像任何其他目录一样压缩它。要删除历史记录,请跳过 .git 目录。
如果你想从某个提交创建快照,git archive 是正确的工具。您还可以使用 --depth 选项进行克隆以跳过整个历史记录的下载。
单击zip
存储库页面上的按钮。
为什么不直接压缩文件?
尝试这个:
https://github.com/[user-name]/[repo-name]/archive/master.zip
我认为 git archive 是您需要的命令。它将创建一个包含您指定的版本的 zip 或 tar 文件!它也有许多不同的有趣选项,可以在本地或远程存储库上工作。