前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Git本地库和Github远程库推送、拉取和克隆操作指令及团队内协作和跨团队协作

Git本地库和Github远程库推送、拉取和克隆操作指令及团队内协作和跨团队协作

作者头像
Gnep@97
发布2023-08-10 09:49:29
2260
发布2023-08-10 09:49:29
举报

前言

  • 本文概述:
    • 介绍Git 本地库和 Github 远程库推送、拉取及克隆命令操作
    • 详细模拟实现了团队内协作和跨团队协作

一、相关指令

在这里插入图片描述
在这里插入图片描述

1、创建远程库&创建别名(git remote add 别名 远程地址)

①、创建仓库(Repository)

在这里插入图片描述
在这里插入图片描述

建议远程库的名字和本地库相同

在这里插入图片描述
在这里插入图片描述

那么这个远程库 git-demo 就创建好了

在这里插入图片描述
在这里插入图片描述

②、查看当前所有远程库地址别名(git remote -v)

代码语言:javascript
复制
git remote -v

当前远程库地址没有别名

在这里插入图片描述
在这里插入图片描述

③、创建远程库别名(git remote add 别名 远程地址) 起别名原因:远程地址太长了,取个别名方便记忆

复制 HTTPS 对应链接,这个就是远程库的链接

在这里插入图片描述
在这里插入图片描述
代码语言:javascript
复制
git remote add git-demo https://github.com/Gnepuil79/git-demo.git

这里出现了两个别名,fetch和push意味着可以推送、拉取以及克隆

在这里插入图片描述
在这里插入图片描述

2、推送本地分支到远程库(git push 别名 分支)

代码语言:javascript
复制
git push git-demo master

报错了:

fatal: unable to access ‘https://github.com/Gnepuil79/git-demo.git/’: SSL certificate problem: unable to get local issuer certificate

在这里插入图片描述
在这里插入图片描述
  • 产生原因:一般是这是因为服务器的SSL证书没有经过第三方机构的签署,所以才报错
  • 解决方法:解除ssl验证后,再次git即可 输入此条git命令:
代码语言:javascript
复制
git config --global http.sslVerify "false"
git push git-demo master

此时弹出一个 Connect to GitHub弹窗,点击 Sign in with your browser

在这里插入图片描述
在这里插入图片描述

点击 Authorize git-ecosystem

在这里插入图片描述
在这里插入图片描述

然后就显示身份验证成功了

在这里插入图片描述
在这里插入图片描述

此时再看Git Bash即可看到推送本地分支到远程库成功的信息

在这里插入图片描述
在这里插入图片描述

浏览器页面刷新也可以看到 hello.txt

在这里插入图片描述
在这里插入图片描述

点进去可以看到具体内容

在这里插入图片描述
在这里插入图片描述

3、拉取远程库与本地分支合并(git pull 远程库地址别名 远程分支名)

①、先在远程库将 hello.txt 文件内容做以下修改

在这里插入图片描述
在这里插入图片描述

②、将修改的进行保存

在这里插入图片描述
在这里插入图片描述

③、回到Git Bash,拉取远程库到本地库

代码语言:javascript
复制
cat hello.txt
git pull git-demo master
cat hello.txt

可以看到拉取成功,且 hello.txt 在拉取前后内容发生了改变

在这里插入图片描述
在这里插入图片描述

4、克隆远程库到本地(git clone 远程地址)

①、在Git-Space目录下新建一个 xiaoming 文件夹

在这里插入图片描述
在这里插入图片描述

②、复制HTTPS的URL

在这里插入图片描述
在这里插入图片描述

③、克隆远程库到本地 在文件夹右键进入 Git Bash

代码语言:javascript
复制
git clone https://github.com/Gnepuil79/git-demo.git
ll

可以看到克隆成功

在这里插入图片描述
在这里插入图片描述
  • clone和pull不需要登录帐号,公共库的读取权限没有限制
  • 不需要初始化本地库
  • 与pull的区别:pull要求本地已经有文件
  • clone 会做如下操作:1、拉取代码。2、初始化本地仓库。3、创建别名

二、团队内协作

需要两个 Github 账号,进行团队内协作 我们这里使用两个账户分别为 Gnepuil79 和 Nuyoah6 建议使用两个不同的浏览器分别登陆不同的账号

我们实现的功能是 在 Git-Space/xiaoming/git-demo(从上文可知是从远程库克隆过来的)中将修改后的 hello.txt 推送到 Gnepuil79 远程库,然后在 Git-Space/git-demo 中从Gnepuil79 远程库拉取与本地分支合并,这样就属于团队内协作

具体操作: 将 Nuyoah6 用户加入到 Gnepuil79 的团队 1、谷歌浏览器登录 Gnepuil79 的 github 账号 git-demo->Setting->Collaborators->Add people

在这里插入图片描述
在这里插入图片描述

加入 Nuyoah6 用户,复制Pending Invite邀请函

在这里插入图片描述
在这里插入图片描述

2、Microsoft Edge浏览器登录 Nuyoah6 的 github 账号并在 github 的地址栏输入刚刚复制的 Pending Invite邀请函

在这里插入图片描述
在这里插入图片描述

点击接受邀请

在这里插入图片描述
在这里插入图片描述

这样 Nuyoah6 用户就加入到 Gnepuil79 的团队了,并可以

3、基于上面创建的 xiaoming 文件夹进入到 git-demo 打开 Git Bash,修改 hello.txt 并修改内容,并将本地文件添加到暂存区,并提交到本地库。

代码语言:javascript
复制
cd git-demo
vim hello.txt
git status
git add hello.txt
git commit -m "xiaoming modify" hello.txt
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

将本地分支内容推送到远程库

代码语言:javascript
复制
git push https://github.com/Gnepuil79/git-demo.git master
在这里插入图片描述
在这里插入图片描述

这样 Gnepuil79 和 Nuyoah6 用户登录 github 查看git-demo/hello.txt 都可以看到所做的修改

在这里插入图片描述
在这里插入图片描述

4、回到之前的 Git Bash 中(/d/Git-Space/git-demo) 拉取远程库与本地分支合并

代码语言:javascript
复制
cat hello.txt
git pull git-demo master
cat hello.txt
在这里插入图片描述
在这里插入图片描述

这样就模拟实现了团队内协作

三、跨团队协作

需要三个 Github 账号,进行跨团队协作 我们这里使用两个账户分别为 Gnepuil79 和 Nuyoah6 和 BuNaNa-yy 建议使用三个不同的浏览器分别登陆不同的账号 Gnepuil79 和 Nuyoah6 属于一个团队,BuNaNa-yy属于团队外成员 我们实现的功能是邀请团队外的用户 BuNaNa-yy 对代码进行修改,我们再将修改后的代码拉取过来,这就属于跨团队协作

1、将远程仓库的地址复制发给邀请跨团队协作的人,比如 BuNaNa-yy 首先用火狐浏览器登录 BuNaNa-yy github账号,然后搜索 Gnepuil79/git-demo 找到Gnepuil79 开发的git-demo

在这里插入图片描述
在这里插入图片描述

2、点击 fork,将 Gnepuil 的项目代码叉到 BuNaNa-yy 账号里面来

在这里插入图片描述
在这里插入图片描述

点击create fork

在这里插入图片描述
在这里插入图片描述

3、直接在 web 端进行修改

在这里插入图片描述
在这里插入图片描述

commit changes

在这里插入图片描述
在这里插入图片描述

现在 BuNaNa-yy 修改的代码只有自己可以看得到,接下来是通知 Gnepuil79 把修改后的代码拉回去. 点击 pull requests->New pull request->Create pull request

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4、用谷歌浏览器登录 Gnepuil79 github账号,可以看到来自 BuNaNa-yy 的 Pull requests

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5、火狐浏览器打开 BuNaNa-yy github账号可以看到对面的回话,接着 BuNaNa-yy 回复快合入吧

在这里插入图片描述
在这里插入图片描述

6、谷歌浏览器登录 Gnepuil79 github账号,可以看到对面的回话,然后合入代码 Merge pull request->confirm merge

在这里插入图片描述
在这里插入图片描述

执行后可以看到这样一个合入信息,证明成功合入

在这里插入图片描述
在这里插入图片描述

7、查看 Gnepuil79的git-demo/hello.txt,可以发现hello.txt是修改后的了

在这里插入图片描述
在这里插入图片描述

这样就模拟实现了跨团队协作

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-04-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 一、相关指令
    • 1、创建远程库&创建别名(git remote add 别名 远程地址)
      • 2、推送本地分支到远程库(git push 别名 分支)
        • 3、拉取远程库与本地分支合并(git pull 远程库地址别名 远程分支名)
          • 4、克隆远程库到本地(git clone 远程地址)
          • 二、团队内协作
          • 三、跨团队协作
          相关产品与服务
          Prowork 团队协同
          ProWork 团队协同(以下简称 ProWork )是便捷高效的协同平台,为团队中的不同角色提供支持。团队成员可以通过日历、清单来规划每⽇的工作,同时管理者也可以通过统计报表随时掌握团队状况。ProWork 摒弃了僵化的流程,通过灵活轻量的任务管理体系,满足不同团队的实际情况,目前 ProWork 所有功能均可免费使用。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档