Git学习之远程仓库的使用
这里我们将学习远程仓库的使用。什么是远程仓库: 远程仓库是指托管在因特网或其他网络中的你的项目的版本库。 你可以有好几个远程仓库,通常有些仓库对你只读,有些则可以读写。 与他人协作涉及管理远程仓库以及根据需要推送或拉取数据。 比如:
- Github
- 码云
1. 添加远程仓库
运行 git remote add <shortname> <url>
添加一个新的远程 Git 仓库,同时指定一个你可以轻松引用的简写,默认为origin
:除了使用默认的SSH
方式外,还可以使用https
的方式。
添加了远程仓库后,我们可以使用git remote
查看远程仓库的引用
这个origin
就是我们添加的远程Github
创建的一个名为apple
仓库,这个URL是标准格式 git@github.com:你的用户名/仓库名.git
2.查看远程仓库
使用git remote -v
就可以查看远程仓库的详细信息
3.远程仓库的重命名和删除
- 重命名
git remote rename <旧的名字> <新的名字>
- 删除远程仓库的引用
4.从远程仓库中抓取与拉取
从远程仓库中获得数据,可以执行:
$ git fetch [remote-name]
这个命令会访问远程仓库,从中拉取所有你还没有的数据。 执行完成后,你将会拥有那个远程仓库中所有分支的引用,可以随时合并或查看。
如果你使用clone
命令克隆了一个仓库,命令会自动将其添加为远程仓库并默认以“origin”
为简写。 所以,git fetch origin
会抓取克隆(或上一次抓取)后新推送的所有工作。 必须注意 git fetch 命令会将数据拉取到你的本地仓库 - 它并不会自动合并或修改你当前的工作。 当准备好时你必须手动将其合并入你的工作。
如果你有一个分支设置为跟踪一个远程分支(阅读下一节与 Git 分支 了解更多信息),可以使用git pull
命令来自动的抓取然后合并远程分支到当前分支。
$ git pull [remote-name]
这对你来说可能是一个更简单或更舒服的工作流程;默认情况下,git clone
命令会自动设置本地 master 分支跟踪克隆的远程仓库的 master 分支(或不管是什么名字的默认分支)。 运行 git pull
通常会从最初克隆的服务器上抓取数据并自动尝试合并到当前所在的分支。
5.推送到远程仓库
当你想分享你的项目时,必须将其推送到上游。 这个命令很简单:git push [remote-name] [branch-name]
。 当你想要将 master 分支推送到 origin 服务器时(再次说明,克隆时通常会自动帮你设置好那两个名字),那么运行这个命令就可以将你所做的备份到服务器:
$ git push origin master
只有当你有所克隆服务器的写入权限,并且之前没有人推送过时,这条命令才能生效。 当你和其他人在同一时间克隆,他们先推送到上游然后你再推送到上游,你的推送就会毫无疑问地被拒绝。 你必须先将他们的工作拉取下来并将其合并进你的工作后才能推送。