【Git系列】Git到远程仓库

Git到远程仓库

    • 1. github账号注册
    • 2. 初始化本地仓库
    • 3. 创建GitHub远程仓库
    • 4. 给本地仓库起别名
      • 4.1 查看远程库的连接地址
      • 4.2 起别名
    • 5. git推送操作
    • 6. git克隆操作
    • 7. 邀请加入团队_push
      • 7.1 未加入团队push
      • 7.2 加入团队push
    • 8. 拉取远程仓库
      • 8.1 fetch+merge
      • 8.2 pull
    • 9. 协同开发冲突解决
      • 9.1 制造冲突
      • 9.2 解决冲突


远程仓库有两种:一种是gitee(国内),一种是github(国外),在这里我们以github为例进行讲解

1. github账号注册

github官网: https://github.com/

进入首页,点击 Sign up按钮

【Git系列】Git到远程仓库_第1张图片

进入到注册页面,填写注册信息

【Git系列】Git到远程仓库_第2张图片

注册完成后,就可以登录了

点击首页 Sign in进行登录

【Git系列】Git到远程仓库_第3张图片

2. 初始化本地仓库

不管使用远程仓库还是在本机上操作,还是团队内部协作都是需要先初始化本地仓库。

在D盘下,创建一个文件夹名为:github_res,将创建一个文件,完成add commit操作

【Git系列】Git到远程仓库_第4张图片

3. 创建GitHub远程仓库

如果是第一次使用github,我们需要登录的注册邮箱账号,进行验证,才可以使用,验证完之后,会弹出以下界面我们选择,创建第一个仓库

【Git系列】Git到远程仓库_第5张图片

如果不是第一次使用,登录成功后我们点击右上角 + 号进行创建仓库

【Git系列】Git到远程仓库_第6张图片

在以下界面填写仓库信息

【Git系列】Git到远程仓库_第7张图片

【Git系列】Git到远程仓库_第8张图片

4. 给本地仓库起别名

4.1 查看远程库的连接地址

在刚刚我们创建成功页面,就已经显示了我们远程仓库的地址了

image-20230706222219976

也可以从github首页中,查看某个库的连接地址

【Git系列】Git到远程仓库_第9张图片

4.2 起别名

远程仓库的地址:https://github.com/zjl-zhangjilu/github_res.git名字太长,如果我们每次提交文件,都要输入这么长的地址,是不是太麻烦?我们就用起别名的方式解决这个问题!

  • 查看当前库的别名
git remote -v

【Git系列】Git到远程仓库_第10张图片

当前是没有任何别名的

  • 起别名
git remote add 别名名称 远程仓库地址

【Git系列】Git到远程仓库_第11张图片

* feth: 代表可以从该地址获取文件
* push: 代表可以从该地址推送文件

5. git推送操作

在本地仓库中的文件上传到远程仓库中,这就是推送

$ git push 远程仓库别名 分支

在控制台上输入命令

$ git push origin master

出现以下界面输入github的用户名和密码,最后点击Login

【Git系列】Git到远程仓库_第12张图片

稍等片刻,会出现以下OpenSSH界面,输入github的用户名密码

【Git系列】Git到远程仓库_第13张图片

最后提交成功

【Git系列】Git到远程仓库_第14张图片

查看github已经将本地仓库中的内容推送到了github上了

【Git系列】Git到远程仓库_第15张图片

6. git克隆操作

将远程仓库中的内容拉取到本地仓库中,这就是克隆操作

git clone 远程仓库地址

注意:克隆操作可以帮我们完成三件事情

  • 初始化本地仓库

  • 将远程库内容完整的克隆到本地

  • 替我们创建远程库的别名

    【Git系列】Git到远程仓库_第16张图片

7. 邀请加入团队_push

在实际开发中,我们都是以团队为单位进行项目开发,团队中的每一个人功能代码写完之后,都是要上传到远程仓库中的,如果该团队中的成员没有加入到团队,是不能进行代码提交等操作的。

【Git系列】Git到远程仓库_第17张图片

7.1 未加入团队push

在本地仓库github_res中,创建test1.txt文件,并添加内容

【Git系列】Git到远程仓库_第18张图片

将test1.txt文件,添加暂存区和本地仓库中

【Git系列】Git到远程仓库_第19张图片

将test1.txt文件推送到远程库中

【Git系列】Git到远程仓库_第20张图片

【Git系列】Git到远程仓库_第21张图片

文件虽然我们提交上去了,感觉那里不对? 现在我们所站在的角色是团队内的普通成员,团队内的成员要想提交文件,必须我们要进行加入团队,才能提交文件,而现在我们根本没有邀请,反而也能提交文件,这是不可行的!

7.2 加入团队push

清理缓存

​ 当我们使用其他成员的身份进行push操作时,由于我们使用的是同一台电脑,并没有让我们输入用户名和密码,这是由于在我们本地电脑上有对github用户名和密码的缓存,所以下面我们将缓存清楚掉!

【Git系列】Git到远程仓库_第22张图片

【Git系列】Git到远程仓库_第23张图片

加入团队

  • 在工作区中新建文件,并录入一些内容,提交到暂存区和工作区中

【Git系列】Git到远程仓库_第24张图片

【Git系列】Git到远程仓库_第25张图片

  • 提交到远程仓库中

    【Git系列】Git到远程仓库_第26张图片

    此时就让我们输入用户名和密码,这个时候就要输入另外一个成员的github的用户名和密码

    【Git系列】Git到远程仓库_第27张图片

    输入完用户名和密码之后,发现提交失败,是因为当前github账号([email protected])没有加入到团队,下面我们就要将[email protected],账号的成员加入到团队中

  • 加入到团队操作

假设当前的账号([email protected])是项目经理,要邀请成员([email protected]),加入到团队。

首先登录项目经理的github账号。

【Git系列】Git到远程仓库_第28张图片

【Git系列】Git到远程仓库_第29张图片

输入要添加成员的用户名

【Git系列】Git到远程仓库_第30张图片

点击邀请

【Git系列】Git到远程仓库_第31张图片

在邀请列表中,选择要加入团队的成员

【Git系列】Git到远程仓库_第32张图片

复制邀请链接

【Git系列】Git到远程仓库_第33张图片

邀请链接:https://github.com/zjl-zhangjilu/github_res/invitations

退出当前项目经理账号,登录成员账号,并在当前地址栏中,粘贴邀请连接

【Git系列】Git到远程仓库_第34张图片

被邀请成员,接收邀请

【Git系列】Git到远程仓库_第35张图片

使用普通成员账号push操作

github账号需要切换到项目经理的账号进行登录,进行再次的push操作,输入普通成员的github账号

【Git系列】Git到远程仓库_第36张图片

push成功

image-20230706223209798

查看远程仓库

【Git系列】Git到远程仓库_第37张图片

【Git系列】Git到远程仓库_第38张图片

发现他们都看到有三个文件,团队协作操作成功!!!

8. 拉取远程仓库

从远程仓库中将文件拉取到本地仓库中,其实就是fetch(拉取)和merge(合并)

【Git系列】Git到远程仓库_第39张图片

8.1 fetch+merge

如果代码比较多,也为了保险起见是不是我想要的内容,可以使用fetch+merge操作

查看远程库的内容是否更新

【Git系列】Git到远程仓库_第40张图片

【Git系列】Git到远程仓库_第41张图片

将远程仓库中的内容拉取到本地

$ git fetch 远程仓库名称 远程仓库对应的分支

【Git系列】Git到远程仓库_第42张图片

注意:拉取只是将远程仓库中的文件下载到了本地上,但是工作区中的文件并没有更新,还是原先的内容

【Git系列】Git到远程仓库_第43张图片

抓取后,可以切换到远程仓库中查看内容是否正确

image-20230706223413367

【Git系列】Git到远程仓库_第44张图片

【Git系列】Git到远程仓库_第45张图片

内容正确,进行合并操作

image-20230706223439892

合并(merge):git merge origin/master

【Git系列】Git到远程仓库_第46张图片

查看工作区中文件内容是否更新

【Git系列】Git到远程仓库_第47张图片

8.2 pull

如果代码简单,想省事也不需要考虑内容是否正确,可以使用pull操作

【Git系列】Git到远程仓库_第48张图片

9. 协同开发冲突解决

当多个用户操作同一个文件中的同一行数据,会造成冲突,下面我们就解决这个问题。

【Git系列】Git到远程仓库_第49张图片

9.1 制造冲突

以公司项目经理角色,在github_res库中,创建文件,并保存内容,进行add commit和推送到远程库中操作。

提交文件到远程仓库【项目经理】

【Git系列】Git到远程仓库_第50张图片

拉取文件【普通成员】

在这里,切换本地仓库,或者自己创建一个新的仓库【github_res1】。进行演示,今天我重新创建一个新库,进行拉取远程仓库中的数据。

【Git系列】Git到远程仓库_第51张图片

到目前为止还没有产生冲突,因为还没有对同一个文件进行操作。

修改文件进行提交【普通成员】

提前清除掉电脑中github的账号和密码的缓存,使用5155xxx账号进行登录,提交数据。

image-20230706224314780

【Git系列】Git到远程仓库_第52张图片

【Git系列】Git到远程仓库_第53张图片

修改文件并提交【项目经理】

使用项目经理的的角色修改github_res库的demo.txt文件,并提交到远程仓库中

注意:提前清除掉电脑中github的账号和密码的缓存,使用4593xxx账号进行登录,提交数据

【Git系列】Git到远程仓库_第54张图片

【Git系列】Git到远程仓库_第55张图片

【Git系列】Git到远程仓库_第56张图片

这时,我们提交出错了,提交不上去,是因为有冲突。

9.2 解决冲突

在这种情况下,我们先进行拉取远程仓库中的内容,再进行推送到服务器。即可解决冲突的问题。

拉取远程仓库中的文件

以项目经理为角色进行拉取文件

【Git系列】Git到远程仓库_第57张图片

查看拉取后的demo.txt文件内容

【Git系列】Git到远程仓库_第58张图片

人为解决冲突

要那一个和不要那一个,根据情况而定。在这里我们都留着。

【Git系列】Git到远程仓库_第59张图片

解决完冲突完之后,推送到服务器

【Git系列】Git到远程仓库_第60张图片

【Git系列】Git到远程仓库_第61张图片

查看远程仓库文件

【Git系列】Git到远程仓库_第62张图片

【Git系列】Git到远程仓库_第63张图片


请添加图片描述

一、了解什么是版本控制

二、Git概述

三、Git下载与安装教程

四、Git相关命令

五、Git分支操作

六、Git到远程仓库

七、Git配置SSH免密登录

八、IDEA集成Git


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