关于远程仓库
远程 URL 是 Git 用一种花哨的方式表示“代码存放位置”。该 URL 可以是你在 GitHub 上的仓库,也可以是其他用户的 fork,甚至是完全不同服务器上的仓库。
你只能推送到两种类型的 URL 地址
- HTTPS URL 示例:
https://github.com/user/repo.git - SSH URL 示例:
git@github.com:user/repo.git
Git 会将远程 URL 与一个名称关联起来,默认的远程名称通常是 origin。
创建远程仓库
你可以使用 git remote add 命令将远程 URL 与名称对应。例如,你可以在命令行中输入以下内容
git remote add origin <REMOTE_URL>
这会将名称 origin 与 REMOTE_URL 关联起来。
你可以使用命令 git remote set-url 来更改远程的 URL。
为远程仓库选择 URL
在 GitHub 上有多种方式克隆仓库。
当你登录账户并查看仓库时,可用于将项目克隆到本地电脑的 URL 会显示在仓库详情下方。
有关设置或更改远程 URL 的信息,请参阅管理远程仓库。
使用 HTTPS URL 克隆
所有仓库(无论可见性如何)都提供 https:// 克隆 URL。即使在防火墙或代理后,https:// 克隆 URL 也能正常工作。
当在命令行中使用 HTTPS URL 对私有远程仓库执行 git clone、git fetch、git pull 或 git push 时,Git 会要求输入你的 GitHub 用户名和密码。当 Git 提示输入密码时,请使用个人访问令牌(Personal Access Token)。或者,你也可以使用像 Git Credential Manager 这样的凭据助手。基于密码的 Git 认证已被更安全的认证方式取代。更多信息,请参阅 管理你的个人访问令牌。
如果你访问的组织使用 SAML 单点登录(SSO),且使用的是经典个人访问令牌(personal access token),在进行身份验证之前,还必须授权该令牌以访问该组织。更多信息,请参阅 关于单点登录的身份验证 和 授权个人访问令牌用于单点登录。
提示
- 你可以使用凭据助手,使 Git 在每次与 GitHub 通信时记住你的凭据。更多信息,请参阅 在 Git 中缓存 GitHub 凭据。
- 如果想在命令行中克隆仓库时不进行 GitHub 身份验证,可以改用 GitHub Desktop 进行克隆。更多信息,请参阅 从 GitHub 克隆仓库到 GitHub Desktop。
如果你更倾向使用 SSH 但无法通过 22 端口连接,可能可以使用 SSH 通过 HTTPS 端口。更多信息,请参阅 在 HTTPS 端口上使用 SSH。
使用 SSH URL 克隆
SSH URL 通过安全协议 SSH 提供对 Git 仓库的访问。要使用这些 URL,需要在电脑上生成一对 SSH 密钥,并将公钥添加到你的 GitHub 账户中。更多信息,请参阅 使用 SSH 连接到 GitHub。
当使用 SSH URL 对远程仓库执行 git clone、git fetch、git pull 或 git push 时,系统会提示输入密码,并要求提供 SSH 密钥的密码短语。更多信息,请参阅 使用 SSH 密钥密码短语。
如果你访问的组织使用 SAML 单点登录(SSO),在进行身份验证之前,必须授权你的 SSH 密钥以访问该组织。更多信息,请参阅 关于单点登录的身份验证 和 授权 SSH 密钥用于单点登录,该内容位于 GitHub Enterprise Cloud 文档中。
提示
你可以使用 SSH URL 将仓库克隆到本地电脑,或作为将代码安全部署到生产服务器的方式。还可以在部署脚本中使用 SSH 代理转发,以免在服务器上管理密钥。更多信息,请参阅 使用 SSH 代理转发。
使用 GitHub CLI 克隆
你也可以安装 GitHub CLI,以在终端中使用 GitHub 工作流。更多信息,请参阅 关于 GitHub CLI。