02.Git远程仓库

一、常用的托管服务

1.gitHub

        一个面向开源及私有软件项目的托管平台,只支持Git作为唯一的版本库格式进行托管。

2.码云(gitee)

        是国内的一个代码托管平台,服务器在国内,所有相较于gitHub使用起来更加方便一点。

3.gitLab

        是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务,一般用于在企业、学校等内部网络搭建git私服

二、常用操作(gitee示例)

1. 创建远程仓库

(1)注册登录

(2)“+”创建仓库

02.Git远程仓库_第1张图片

(3)填写仓库名、介绍、创建

02.Git远程仓库_第2张图片

2.配置SSH公钥

2.1生成SSH公钥

        在gitbash中输入ssh-keygen -t rsa指令,一路回车即可。(如果公钥已存在,会自动覆盖)

02.Git远程仓库_第3张图片

2.2 Gitee设置账户公钥

(1)查看已生成公钥

        cat ~/.ssh/id_rsa.pub

02.Git远程仓库_第4张图片

(2)gitee设置中添加SSH公钥

02.Git远程仓库_第5张图片

02.Git远程仓库_第6张图片

(3)验证是否配置成功

        在gitbash中输入ssh -T [email protected]

02.Git远程仓库_第7张图片

3.操作远端仓库

3.1 添加远程仓库

(1)在gitbash中通过以下指令添加远程仓库

 git remote add 远端名称 运程仓库的SSH链接

        远端名称:默认是origin,取决于远端服务器的设置

(2)git remote查看远程仓库

3.2 推送到远程仓库

git push [-f] [--set-upstream] [远程仓库名] [本地分支名][:远程分支名]

-f:表示强制覆盖;

--set-upstream:推送到远端的同时,建立起和远端分支的关联关系;

若本地分支名与远端分支名相同:可只写本地分支名;

若当前分支已经和远端分支关联:可省略远端名和分支名

02.Git远程仓库_第8张图片

3.3 查看本地分支与远端分支的关联关系

git branch -vv

3.4 从远端仓库克隆

        如果远端仓库已存在,可以直接将远端仓库克隆到本地。

git clone [仓库路径] [本地目录名]

3.5 从远端仓库抓取和拉取

        远程分支和本地分支一样,我们可以进行merge操作,只是需要先把远程仓库中的更新下载到本地,在进行操作:

(1)抓取:git fetch [remote name] [branch name]

        将远端仓库的更新全部抓取到本地,不会进行合并;

        若不指定远端名和分支名,则抓取所有分支;

(2)拉取:git pull [remote name] [branch name]

        将远端仓库的更新拉取到本地,并自动进行合并;

        若不指定远端名和分支名,则抓取所有并更新当前分支;

3.6 解决合并冲突

        如果多个用户同时修改了同一文件的同一行内容,此时合并就会发生冲突。

        例如:A用户在本地修改了代码后提交到了远程仓库,此时B在本地修改了同一位置的内容,添加到本地仓库后也需要推送到远程仓库,因为B晚于A,此时远程仓库已经发生了更新,所以需要先拉取远程仓库的更新,经过合并后,再提交到远程仓库。

        B在拉取后进行合并时,就会发生合并冲突。

解决方法:远程分支也是分支,所以解决方法和本地分支合并冲突解决方法相同,在push前,先pull,在本地将冲突解决后再push到远程仓库。

你可能感兴趣的:(Git,git)