git 如何以最少的下载量,直接下载指定 hash

hash 值已知,分支不定的情况下,能不能一条命令下载项目。

阅读 3.2k
1 个回答
git init
git remote add origin <url>
git fetch --depth 1 origin <sha1>
git checkout FETCH_HEAD

通过--depth 1限定shallow clone,只clone相关的一级深度,这样就可以大大加快clone的速度

另:

如果有仓库sub modules,还可以用shallow clone的方式一并clone sub modules:

git clone --branch <sha1/branch/tag> --recursive -j$(nproc) --depth 1 <git repo>

see: https://stackoverflow.com/a/6...

推荐问题