远程仓库
git 既允许你在本地进行版本管理,也允许你在一些仓库托管平台管理你的仓库,这样一来你就可以让远程仓库和本地仓库同步!
远程仓库的既可以让我们备份项目文件,也可以让其他人通过该仓库来实现协作
创建一个远程仓库
| New Repo |
|---|
![]() |
成功创建仓库后,github 会提示你有三个选项:
- 在本地创建一个 新的 repo 把它与这个远程仓库关联起来
- 把本地已经存在的仓库和这个远程仓库关联起来
- 直接导入代码到这个远程仓库
| Next |
|---|
![]() |
本地仓库关联远程仓库
可以发现,前两个选项都需要输同一条指令:
git remote add origin https://github.com/username/reponame.git
# git remote add origin git@github.com:username.reponame.git
它的作用就是把本地仓库与远程仓库关联起来,其中origin 是远程库的名字
WARNING
origin 是可以改的,但是为了规范并不建议更改
推送文件到远程仓库
到达这一步前请确认一下你是否在本地已经存在了版本库,并把它与远程仓库关联起来了
git push -u origin master
# 把本地的master分支推送到远程仓库的master分支
# -u参数是第一次推送时使用作用是把 origin/master 分支 和本地master 关联,这样一来,以后推送仓库就可以简化命令
大功告成, 我们已经有自己的远程仓库了!
TIP
除了使用 https 协议认证,还可以使用 ssh 的密钥来认证。
- https 每次推送都需要输入帐号和密码认证
- ssh 只需要把本地生成的 rsa 公钥存入托管网站,以后每次提交都无需登录
听说 ssh 认证的方式传输速度比 https 快,可以自行学习使用
删除远程库
如果添加的时候地址写错了,或者就是想删除远程库,可以用git remote rm <name>命令。使用前,建议先用git remote -v查看远程库信息:
git remote -v
git remote rm <name>
# 比如 git remote rm origin
TIP
也可以直接使用 git remote set-url origin <url> 更改
克隆一个远程仓库
实际上这个部分的内容才是最常用的功能,毕竟互联网上有非常非常多优秀且开源的项目可以供我们学习、使用
选择一个合适的位置,打开终端
git clone https://github.com/username/reponame.git
# git clone git@github.com:username/reponame.git
# Cloning into 'gitskills'...
# remote: Counting objects: 3, done.
# remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 3
# Receiving objects: 100% (3/3), done.
这样整个项目的文件都被下载了
TIP
如果你没有这个仓库的权限,那么你是无法 push 的, 如果你想修改这个分支的文件,需要先 fork ,改完后再 pr,等 owenr 同意,这个过程其实就是 git 多人协作开发的主要方式

