一,介绍
常用的远程仓库有:
-
GitHub:www.github.com
是一个世界级的面向开源及其私有软件项目的托管平台。因为服务器在国外,访问起来就需要点魔法。
-
Gitee:www.gitee.com
是国内的一共代码托管平台,相当于国内的GitHub
-
GitLab:www.about.gitlab.com
一个仓库级的开源项目,相当于需要你自己搭建的GitHub
二, 配置Gitee远程仓库
使用方式:
-
先注册一个gitee账号
-
创建仓库
-
配置SSH公钥免密
在cmd中运行:
cmdssh-keygen -t ed25519 -C "Gitee SSH Key"
默认会生成在当前用户目录下的.ssh目录中
打开文件:id_rsa.pub里面就是公钥了
-
在gitee中配置公钥
-
测试是否成功:
cmdssh -T [email protected]
注意:.ssh文件不要移动!
三,喷洒在GitHub仓库
-
先注册一个账号
-
创建github仓库
-
-
配置ssh免密登录
-
-
-
执行命令
cmdssh-keygen -t ed25519 -C "Gitee SSH Key"
- -t是指定用什么加密算法
- -C 注释内容(不需要加双引号)
默认会生成在当前用户目录下的
.ssh
目录中,打开文件:id_rsa.pub
里面就是公钥了 -
测试是否生效
cmdssh -T [email protected]
四,操作远端仓库
4.1 远程仓库的推送
首先要找到远程仓库的地址

在本地添加远程仓库:
cmd
git remote add origin 远程仓库地址
origin是远程的意思,一般情况下一个本地仓库只会对应一个远程仓库。
查看远程仓库
cmd
git remote
将本地仓库的内容推送到远程仓库中:
cmd
git push origin 准备推送的分支
参数:
cmd
#强制上传
git push -f origin master
#推送到远端的同时并且建立起和远端分支的关联关系。
git push --set-upstream origin master
完整的命令格式:
cmd
git push 远端名称 本地分支名:远端分支名
就是要将本地的master分支和云端的master分支关联!只需要在第一次推送的时候执行。
4.2 远程仓库的克隆
如果已经有一个远端仓库,我们可以直接clone到本地。
cmd
git clone 仓库地址
4.3 远程仓库的抓取和拉取
远程分支和本地的分支一样,我们可以进行merge操作,只是需要先把远端仓库里的更新都下载到本地,再进行操作。
抓取命令:抓取指令就是将仓库里的更新都抓取到本地,不会进行合并
cmd
git fetch 远程仓库名 要抓取的分支名
- 如果不指定远端名称和分支名,则抓取所有分支
拉取命令 :拉取指令就是将远端仓库的修改拉到本地并自动进行合并,等同于fetch+merge
cmd
git pull 远程仓库名 要抓取的分支名
- 如果不指定远端名称和分支名,则抓取所有并更新当前分支。
4.4 远程仓库解决冲突问题
在一段时间,A,B用户修改了同一个文件,且修改了同一行位置的代码,此时会发生合并冲突。
A用户在本地修改代码后优先推送到远程仓库,此时B用户在本地修订代码,提交到本地仓库后也需要推送到远程仓库,此时B用户晚于A用户,故需要先拉取远程仓库的提交,经过合并后才能推送到远程仓库。
如下图所示:

远程分支也是分支,故合并时解决冲突的方式和本地解决方式一致。