远程仓库
Git 项目上协作,需要有远程仓库。远程仓库是指托管在因特网或其他网络中的你的项目的版本库。远程仓库可以只能读或可以读写。与他人协作涉及管理远程仓库以及根据需要推送或拉取数据。 管理远程仓库包括了解如何添加远程仓库、移除无效的远程仓库、管理不同的远程分支并定义它们是否被跟踪等等。
git remote 查看远程仓库
git remote 查看你已经配置的远程仓库服务器,会列出你指定的每一个远程服务器的简写。如果已经克隆了远程仓库。可以看到origin,origin是 Git 给你克隆的仓库服务器的默认名字。
git remote -v 显示需要读写远程仓库使用的 Git 保存的简写与其对应的 URL。
添加远程仓库
git remote add 添加一个新的远程 Git 仓库,同时指定一个你可以轻松引用的简写。
从远程仓库中抓取与拉取
git fetch [remote-name] 从远程仓库中获得数据,会访问远程仓库,从中拉取所有你还没有的数据。 执行完成后,你将会拥有那个远程仓库中所有分支的引用,可以随时合并或查看。
git clone和 git fetch区别
git clone命令克隆了一个仓库,命令会自动将其添加为远程仓库并默认以 “origin” 为简写。git fetch origin 会抓取克隆(或上一次抓取)后新推送的所有工作。 git fetch 命令会将数据拉取到本地仓库,它并不会自动合并或修改你当前的工作。 必须手动将其合并入你的工作。
如果有一个分支设置为跟踪一个远程分支,可以使用 git pull 命令来自动的抓取然后合并远程分支到当前分支。默认,git clone 命令会自动设置本地 master 分支跟踪克隆的远程仓库的 master 分支(或不管是什么名字的默认分支)。 运行 git pull 通常会从最初克隆的服务器上抓取数据并自动尝试合并到当前所在的分支。
git push 推送到远程仓库
当你的项目开发完毕,想分享你的成果,让所有的人能看见,可以把他推送到远程仓库中。git push [remote-name] [branch-name]。 当想要将 master 分支推送到 origin 服务器时(克隆时通常会自动帮你设置好那两个名字),那么运行这个命令就可以将你所做的备份到服务器。
git push origin master
注意:只有当你有所克隆服务器的写入权限,并且之前没有人推送过时,这条命令才能生效。 当你和其他人在同一时间克隆,他们先推送到上游然后你再推送到上游,你的推送就会毫无疑问地被拒绝。 你必须先将他们的工作拉取下来并将其合并进你的工作后才能推送。
git pull 从远程仓库拉取
当你的小伙伴在你的项目中了改动,而且推送到了远程仓库,此时你需要从远程仓库去拉取最新的代码。git pull 远程仓库地址。
查看远程仓库
git remote show [remote-name] 查看某一个远程仓库的更多信息
例如缩写名为origin
git remote show origin 会列出远程仓库的 URL 与跟踪分支的信息,告诉你正处于 master 分支,并且如果运行 git pull,就会抓取所有的远程引用,然后将远程 master 分支合并到本地 master 分支。 它也会列出拉取到的所有远程引用。
远程仓库的移除与重命名
git remote rename 修改一个远程仓库的简写名
git remote rename 老的名字 新的名字
说明:git remote rename这同样也会修改你的远程分支名字。
想要移除一个远程仓库。已经从服务器上搬走了或不再想使用某一个特定的镜像了,又或者某一个贡献者不再贡献了。可以使用git remote rm 仓库的别名 。