增加 Shallow Clone 说明.
Signed-off-by: rick.chan <cy@sina.com>
This commit is contained in:
parent
a8e43f6527
commit
c21ee6b84d
|
@ -365,6 +365,33 @@ Git Clone 支持使用 http、https、ssh 等协议:
|
||||||
|
|
||||||
![使用 SSH 协议进行 Clone](./img/Git_使用说明/git-clone-through-ssh.gif)
|
![使用 SSH 协议进行 Clone](./img/Git_使用说明/git-clone-through-ssh.gif)
|
||||||
|
|
||||||
|
有的代码仓库比较大,提交次数多,Clone 仓库时不需要下载全部提交历史,此时可以使用 --depth 参数指定 Clone 深度,也就是 Shallow Clone 方式:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone --depth <n>
|
||||||
|
```
|
||||||
|
|
||||||
|
其中 n 是要 Clone 的深度,也就是从 HEAD 开始计算的提交次数,比如:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone --depth 3
|
||||||
|
```
|
||||||
|
|
||||||
|
此时 Clone 下来的仓库只包含最新的 3 次提交历史。
|
||||||
|
|
||||||
|
当使用 Shallow Clone 的仓库进行代码提交时可能会出现:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
! [remote rejected] xxx -> xxx (shallow update not allowed)
|
||||||
|
```
|
||||||
|
|
||||||
|
此时需要 fetch 原仓库的全部内容,将 Shallow 转换为非 Shallow 仓库来解决问题:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# <repository url> 为原仓库地址
|
||||||
|
git fetch --unshallow <repository url>
|
||||||
|
```
|
||||||
|
|
||||||
### 3.5. 提交变更
|
### 3.5. 提交变更
|
||||||
|
|
||||||
在修改代码或相关文件后,需要先将变更缓存到本地,这一步被称作 Commit。带签名的提交命令如下:
|
在修改代码或相关文件后,需要先将变更缓存到本地,这一步被称作 Commit。带签名的提交命令如下:
|
||||||
|
|
Loading…
Reference in New Issue