只拿到了一个分支一个 commit, 再运行 fetch 也拿不到其他的分支和 commits 了.
尝试了 git fetch --all
git fetch origin
无效.
用什么命令来获取完整的仓库呢?
更新:
搜到一段文章说不能继续... 不知道是不是真的:
http://strk.keybit.net/blog/2011/06/07/getting-just-the-tip-of-a-remote-git-branch/
A shallow repository (one with short history) cannot be further cloned,
ringa_lee2017-04-24 09:15:04
参考 @Leedy 和 @依云 的答案, 找到有个 unshallow
参数:
git fetch --help
--unshallow
Convert a shallow repository to a complete one, removing all the limitations imposed by shallow repositories.
PHP中文网2017-04-24 09:15:04
(你们就在评论里解决问题了?)
$ git version
git version 1.8.5.3
$ git help clone
...
--depth <depth>
Create a shallow clone with a history truncated to the specified
number of revisions. A shallow repository has a number of
limitations (you cannot clone or fetch from it, nor push from nor
into it), but is adequate if you are only interested in the recent
history of a large project with a long history, and would want to
send in fixes as patches.
...
可见 git shallow clone 只能 clone 当前 remote/HEAD 的目录结构,不包括历史,因此不是完整的 repo。
However,Git 1.9/2.0 已经去除了这个限制,见 https://github.com/git/git/commit/82fba2b9d39163a0c9b7a3a2f35964cbc039e1a。
参考:http://stackoverflow.com/questions/6941889/is-git-clone-depth-1-shallow-clone-more-useful-than-it-makes-out
PHPz2017-04-24 09:15:04
雷雷
--深度=<深度>
使用 --depth=
选项(请参阅 git-clone(1))加深或缩短由 git clone 创建的浅存储库的历史记录,以从每个远程分支历史记录的提示开始指定的提交次数。未获取加深提交的标签。
大家讲道理2017-04-24 09:15:04
git fetch --depth=1000000
stackoverflow上看到个解决办法,但我尝试后还是不好使。
http://stackoverflow.com/questions/6802145/convert-shallow-clone-to-full-clone