克隆Clone
你可能会说
给我一个项目网址,我想把整套代码下载到自己电脑上改。
克隆是第一次把共享代码网站上的项目和版本记录完整下载到电脑的操作。它会新建项目文件夹,并下载代码和以前保存的版本。例如进入文件夹后先阅读项目说明,再安装需要的工具;之后同步新版本使用拉取。
什么时候用
- 第一次参与一个 GitHub 项目时,复制正确的仓库地址再 Clone<> Code ▾https://github.com/oil-oil/my-first-page.git📋绿色 Code 按钮,复制 HTTPS 地址
- Clone 完先进入新文件夹,阅读 README 和项目配置$ git log --onelinee7b2d48 修复按钮在手机上错位a3f9c21 完成首页导航栏0f1e2d3 初始化项目
- 确认项目需要的运行环境后,再安装依赖并启动第一次 clone 整仓→之后 pull 增量
- 之后同步新增版本使用 Pull,不要重复下载整个项目⑂ Fork→在你的账号下创建仓库副本fork 在托管平台复制,clone 下载到本地
什么时候不用
- 把下载 ZIP 当成 clone;压缩包不包含 Git 历史Download ZIP→git log 无法运行ZIP 包含工作文件,但不包含 .git 目录和提交历史
- 在没有写入权限的仓库里直接尝试 Push$ git pushremote: Permission to oil-oil/my-first-page.git denied.
- 反复 Clone 出“项目-2”“项目-最新”等重复文件夹📁 my-first-page
📁 my-first-page-2
📁 my-first-page-最新clone 三份后,难以确认哪个目录最新 - 取得项目后没有安装依赖,就直接尝试启动$ npm run devError: Cannot find module 'react'
组成结构 · Anatomy
https://github.com/oil-oil/my-first-page.git
可以先复制 HTTPS 地址,不需要另外配置 SSH 密钥
仓库托管在哪个网站,GitHub、Gitee 都长这样
仓库是谁的,fork 之后这一段会变成你的名字
项目名字,clone 下来的文件夹默认就叫它
常见变体 · Variants
克隆仓库git clone
git clone https://github.com/oil-oil/my-first-page.git
下载工作文件、仓库元数据和可达提交历史
改文件夹名clone + 名字
git clone <地址> my-app
想换个本地文件夹名
下载 ZIPDownload ZIP
Code ▾ → Download ZIP
仅需要工作文件且不需要 Git 历史时
派生仓库Fork
网页右上 ⑂ Fork
需要在自己的账号下建立远程副本时
典型使用场景
GitHub Code 按钮复制地址
终端 git clone 下载
$ git clone https://github.com/oil-oil/my-first-page.git
Cloning into 'my-first-page'...
remote: Enumerating objects: 36, done.
remote: Counting objects: 100% (36/36), done.
Receiving objects: 100% (36/36), 12.4 KiB | 2.1 MiB/s, done.
当前目录多了一个 my-first-page 文件夹
clone 后查看提交历史
$ git log --oneline
e7b2d48 修复按钮在手机上错位
a3f9c21 完成首页导航栏
b4c5d67 首页基础版本
0f1e2d3 初始化项目
clone 完成后可使用 git log 查看提交历史
fork 他人的仓库
延伸阅读 · 权威出处