Git全栈体系(三)

news2024/11/17 13:44:20

第六章 GitHub 操作

一、创建远程仓库

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

二、远程仓库操作

命令名称作用
git remote -v查看当前所有远程地址别名
git remote add 别名 远程地址起别名
git push 别名 分支推送本地分支上的内容到远程仓库
git clone 远程地址将远程仓库的内容克隆到本地
git pull 远程库地址别名 远程分支名将远程仓库对于分支最新内容拉下来后与当前本地分支直接合并

1. 创建远程仓库别名

1.1 基本语法

  • git remote -v 查看当前所有远程地址别名
  • git remote add 别名 远程地址

1.2 案例实操

Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master)
$ git remote -v
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master)
$ git remote add ori https://github.com/atguiguyueyue/git-shTest.git
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master)
$ git remote -v
ori https://github.com/atguiguyueyue/git-shTest.git (fetch)
ori https://github.com/atguiguyueyue/git-shTest.git (push)
  • https://github.com/atguiguyueyue/git-shTest.git

  • 这个地址在创建完远程仓库后生成的连接,如图所示红框中
    在这里插入图片描述

2. 推送本地分支到远程仓库

2.1 基本语法

  • git push 别名 分支

2.2 案例实操

Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master)
$ git push ori master
Logon failed, use ctrl+c to cancel basic credential prompt.
Username for 'https://github.com': atguiguyueyue
Counting objects: 3, done.
Delta compression using up to 12 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 276 bytes | 276.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To https://github.com/atguiguyueyue/git-shTest.git
* [new branch] master -> master
  • 此时发现已将我们 master 分支上的内容推送到 GitHub 创建的远程仓库。
    在这里插入图片描述

3. 克隆远程仓库到本地

3.1 基本语法

  • git clone 远程地址

3.2 案例实操

Layne@LAPTOP-Layne MINGW64 /d/Git-Space/pro-linghuchong
$ git clone https://github.com/atguiguyueyue/git-shTest.git
Cloning into 'git-shTest'...
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 3 (delta 0), reused 3 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), done.
  • https://github.com/atguiguyueyue/git-shTest.git
  • 这个地址为远程仓库地址,克隆结果:初始化本地仓库
    在这里插入图片描述
# 创建远程仓库别名
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/pro-linghuchong/git-shTest
(master)
$ git remote -v
origin https://github.com/atguiguyueyue/git-shTest.git (fetch)
origin https://github.com/atguiguyueyue/git-shTest.git (push)
  • 小结:clone 会做如下操作。1、拉取代码。2、初始化本地仓库。3、创建别名

4. 邀请加入团队

4.1 选择邀请合作者

在这里插入图片描述

4.2 填入想要合作的人

在这里插入图片描述

4.3 复制地址并通过微信钉钉等方式发送给该用户,复制内容如下:

  • https://github.com/atguiguyueyue/git-shTest/invitations
    在这里插入图片描述

4.4 在 atguigulinghuchong 这个账号中的地址栏复制收到邀请的链接,点击接受邀请

在这里插入图片描述

4.5 成功之后可以在 atguigulinghuchong 这个账号上看到 git-Test 的远程仓库

在这里插入图片描述

4.6 令狐冲可以修改内容并 push 到远程仓库

# 编辑 clone 下来的文件
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/pro-linghuchong/git-shTest
(master)
$ vim hello.txt
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/pro-linghuchong/git-shTest
(master)
$ cat hello.txt
hello git! hello alex! 2222222222222
hello git! hello alex! 33333333333333
hello git! hello alex!
hello git! hello alex!
hello git! hello alex! 我是最帅的,比岳不群还帅
hello git! hello alex!
hello git! hello alex!
hello git! hello alex!
hello git! hello alex!
hello git! hello alex!
hello git! hello alex!
hello git! hello alex!
hello git! hello alex!
hello git! hello alex!
hello git! hello alex! master test
hello git! hello alex! hot-fix test
# 将编辑好的文件添加到暂存区
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/pro-linghuchong/git-shTest(master)
$ git add hello.txt
# 将暂存区的文件上传到本地库
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/pro-linghuchong/git-shTest
(master)
$ git commit -m "lhc commit" hello.txt
[master 5dabe6b] lhc commit
1 file changed, 1 insertion(+), 1 deletion(-)
# 将本地库的内容 push 到远程仓库
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/pro-linghuchong/git-shTest(master)
$ git push origin master
Logon failed, use ctrl+c to cancel basic credential prompt.
Username for 'https://github.com': atguigulinghuchong
Counting objects: 3, done.
Delta compression using up to 12 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 309 bytes | 309.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0)
remote: Resolving deltas: 100% (1/1), completed with 1 local object.
To https://github.com/atguiguyueyue/git-shTest.git
 7cb4d02..5dabe6b master -> master

4.7 回到 atguiguyueyue 的 GitHub 远程仓库中可以看到,最后一次是 lhc 提交的

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

5. 拉取远程库内容

5.1 基本语法

  • git pull 远程库地址别名 远程分支名

5.2 案例实操

# 将远程仓库对于分支最新内容拉下来后与当前本地分支直接合并
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master)
$ git pull ori master
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Compressing objects: 100% (1/1), done.
remote: Total 3 (delta 1), reused 3 (delta 1), pack-reused 0
Unpacking objects: 100% (3/3), done.
From https://github.com/atguiguyueyue/git-shTest
* branch master -> FETCH_HEAD
 7cb4d02..5dabe6b master -> ori/master
Updating 7cb4d02..5dabe6b
Fast-forward
hello.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master)
$ cat hello.txt
hello git! hello alex! 2222222222222
hello git! hello alex! 33333333333333
hello git! hello alex!
hello git! hello alex!
hello git! hello alex! 我是最帅的,比岳不群还帅
hello git! hello alex!
hello git! hello alex!
hello git! hello alex!
hello git! hello alex!
hello git! hello alex!
hello git! hello alex!
hello git! hello alex!
hello git! hello alex!
hello git! hello alex!
hello git! hello alex! master test
hello git! hello alex! hot-fix test

三、跨团队协作

1. 将远程仓库的地址复制发给邀请跨团队协作的人,比如东方不败

在这里插入图片描述

2. 在东方不败的 GitHub 账号里的地址栏复制收到的链接,然后点击 Fork 将项目叉到自己的本地仓库

在这里插入图片描述

  • 叉入中…
    在这里插入图片描述
  • 叉成功后可以看到当前仓库信息
    在这里插入图片描述

3. 东方不败就可以在线编辑叉取过来的文件

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

4. 编辑完毕后,填写描述信息并点击左下角绿色按钮提交

在这里插入图片描述

5. 接下来点击上方的 Pull 请求,并创建一个新的请求

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

6. 回到岳岳 GitHub 账号可以看到有一个 Pull request 请求

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

  • 进入到聊天室,可以讨论代码相关内容
    在这里插入图片描述
    在这里插入图片描述

7. 如果代码没有问题,可以点击 Merge pull reque 合并代码

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

四、SSH 免密登录

  • 我们可以看到远程仓库中还有一个 SSH 的地址,因此我们也可以使用 SSH 进行访问。
    在这里插入图片描述
  • 具体操作如下:
# 进入当前用户的家目录
Layne@LAPTOP-Layne MINGW64 /d/Git-Space/SH0720 (master)
$ cd
# 删除.ssh 目录
Layne@LAPTOP-Layne MINGW64 ~
$ rm -rvf .ssh
removed '.ssh/known_hosts'
removed directory '.ssh'
# 运行命令生成.ssh 秘钥目录[注意:这里-C 这个参数是大写的 C]
Layne@LAPTOP-Layne MINGW64 ~
$ ssh-keygen -t rsa -C atguiguyueyue@aliyun.com
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/Layne/.ssh/id_rsa):
Created directory '/c/Users/Layne/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/Layne/.ssh/id_rsa.
Your public key has been saved in /c/Users/Layne/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:7CPfRLITKcYDhaqpEDeok7Atvwh2reRmpxxOC6dkY44 
atguiguyueyue@aliyun.com
The key's randomart image is:
+---[RSA 2048]----+
| .. |
| .. |
| . .. |
|+ + o . . |
|oO . = S . |
|X . .. + = |
|+@ * .. = . |
|X.&o+. o = |
|Eo+Oo . . |
+----[SHA256]-----+
# 进入.ssh 目录查看文件列表
Layne@LAPTOP-Layne MINGW64 ~
$ cd .ssh
Layne@LAPTOP-Layne MINGW64 ~/.ssh
$ ll -a
total 21
drwxr-xr-x 1 Layne 197609 0 1125 19:27 ./
drwxr-xr-x 1 Layne 197609 0 1125 19:27 ../ -rw-r--r-- 1 Layne 197609 1679 1125 19:27 id_rsa
-rw-r--r-- 1 Layne 197609 406 1125 19:27 id_rsa.pub
# 查看 id_rsa.pub 文件内容
Layne@LAPTOP-Layne MINGW64 ~/.ssh
$ cat id_rsa.pub
ssh-rsa 
AAAAB3NzaC1yc2EAAAADAQABAAABAQDRXRsk9Ohtg1AXLltsuNRAGBsx3ypE1O1Rkdzpm
l1woa6y6G62lZri3XtCH0F7GQvnMvQtPISJFXXWo+jFHZmqYQa/6kOIMv2sszcoj2Qtwl
lGXTPn/4T2h/cHjSHfc+ks8OYP7OWOOefpOCbYY/7DWYrl89k7nQlfd+A1FV/vQmcsa1L
P5ihqjpjms2CoUUen8kZHbjwHBAHQHWRE+Vc371MG/dwINvCi8n7ibI86o2k0dW0+8SL+
svPV/Y0G9m+RAqgec8b9U6DcSSAMH5uq4UWfnAcUNagb/aJQLytrH0pLa8nMv3XdSGNNo
AGBFeW2+K81XrmkP27FrLI6lDef atguiguyueyue@aliyun.com
  • 复制 id_rsa.pub 文件内容,登录 GitHub,点击用户头像→Settings→SSH and GPG keys
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 接下来再往远程仓库 push 东西的时候使用 SSH 连接就不需要登录了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/816789.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

k8s安装Jenkins

目录 ​编辑 一、环境准备 1.1 环境说明 二、安装nfs 2.1 安装NFS 2.2 创建NFS共享文件夹 2.3 配置共享文件夹 2.4 使配置生效 2.5 查看所有共享目录 2.6 启动nfs 2.7 其他节点安装nfs-utils 三、创建PVC卷 3.1 创建namespace 3.2 创建nfs 客户端sa授权 3.3 创建…

如何用python画一朵花,用python画彩色六边形

大家好,小编为大家解答用python画彩色六边形的问题。很多人还不知道如何用python画一朵花,现在让我们一起来看看吧!

63 # commander 的配置

初始化配置文件 新建文件夹 63,执行 npm init -y 修改配置文件 {"name": "kaimo-http-server","version": "1.0.0","description": "","main": "index.js","keywords"…

《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(17)-Fiddler如何充当第三者再识AutoResponder标签-下

1.简介 上一篇宏哥主要讲解的一些在电脑端的操作和应用,今天宏哥讲解和分享一下,在移动端的操作和应用。其实移动端和PC端都是一样的操作,按照宏哥前边抓取移动端包设置好,就可以开始实战了。 2.界面功能解析 根据下图图标注位…

AD21 PCB设计的高级应用(四)FPGA的管脚交换功能

(四)FPGA的管脚交换功能 高速 PCB 设计过程中,涉及的 FPGA等可编程器件管脚繁多,也因此导致布线的烦琐与困难,Altium Designer 可实现 PCB 中 FPGA 的管脚交换,方便走线。 1.FPGA管脚交换的要求 (1)一般情况下,相同电压的 Bank之…

python——案例三:计算三角形面积

案例三:计算三角形面积 afloat(input(输入三角形第一个边的长度:)) #数据导入 bfloat(input(输入三角形第二个边的长度:)) cfloat(input(输入三角形第三个边的长度:)) s(abc)/2 #半周长计算公式 area(s*(s-a)*(s-b)*(s-c))**0.5 #面积公式 print(area) #

多源bfs

这是 LeetCode 上的「1162. 地图分析」 ,难度为「中等」。 与「单源最短路」不同,「多源最短路」问题是求从「多个源点」到达「一个/多个汇点」的最短路径。 在实现上,最核心的搜索部分,「多源 BFS」与「单源 BFS」并无区别。 并…

区块链:可验证随机函数

本篇主要介绍可验证随机函数的定义及其在区块链上的作用。 1 可验证随机函数 1.1 定义 可验证随机函数(Verifiable Random Function,VRF)本质上还是一类具有验证功能的伪随机函数。对于一个特定的输入 m m m以及输入者的私钥 S K SK SK,VRF会输出一个随…

Oracle设置某个表字段递增

当Oracle设置字段递增创建触发器 先建一个序列,打开PLSQL 找到Sequences,右击新建 根据自己的需要填写 然后添加触发器,点新建-程序窗口-空白 --TEST_ID为触发器的名字,TEST是添加触发器的表名 CREATE OR REPLACE TRIGGER &qu…

【C++】 哈希

一、哈希的概念及其性质 1.哈希概念 在顺序结构以及平衡树中,元素关键码与其存储位置之间没有对应的关系,因此在查找一个元素时,必须要经过关键码的多次比较。比如顺序表需要从第一个元素依次向后进行查找,顺序查找时间复杂度为…

【ChatGPT】基于WSL+Docker的ChatGPT PLUS共享服务部署

最近买了ChatGPT PLUS服务,想通过web服务将它共享给其他人使用,搜了一下目前GitHub上比较热门的服务有 ChatGPT-Next-Webchatgpt-web-share 其中chatgpt-web-share支持API和PLUS账号分享两种方式,且架构为PythonJSDocker,相对比…

【EI/SCOPUS会议征稿】第三届检测技术与自动化工程国际学术会议 (TTAE 2023)

第三届检测技术与自动化工程国际学术会议 (TTAE 2023)原定将于2023年9月15-17日在中国西安召开。 检测技术与自动化工程国际学术会议将每年举行一次,旨在将“检测技术”和“自动化工程”等学术领域的学者、专家、研发者、技术人员聚集到一个学术交流的平台&#xf…

docker容器认识及安装(linux系统)

目录 一、Docker概述 容器背景 容器对比传统虚拟化 Docker的使用场景 二、Docker的优点 1、快速的交付和部署 2、更高效的虚拟化 3、更轻松的迁移和扩展 4、简单的管理 三、Docker的核心概念 1、镜像(Image) 2、容器(Container&…

UM2080F32——32位SoC芯片

UM2080F32是基于ARM Cortex-M0内核的超低功耗、高性能的、单片集成(G)FSK/OOK无线收发机的32位SoC芯片。工作于200MHz~960MHz范围内,支持灵活可设的数据包格式,支持自动应答和自动重发功能,支持跳频操作,支持FEC功能,同…

【Lua学习笔记】Lua进阶——垃圾回收

按照唐老师的课程本来要讲自带库的,但是想想这东西能看文档,ctrl左键还能看注解,并且最重要的许多自带库的方法基本大部分语言都有,其实看看就能懂了。所以还是重点讲讲垃圾回收 文章目录 GC辅助垃圾回收collectgarbage增量模式分…

多模态第2篇:MMGCN代码配置

一、Windows环境 1.创建并激活虚拟环境 #创建虚拟环境命名为mmgcn,指定python版本为3.8 conda create -n mmgcn python3.8 #激活虚拟环境 conda activate mmgcn2.安装pytorch #torch2.0.0 cu118 pip install torch2.0.0cu118 torchvision0.15.1cu118 torchaudio…

优维低代码实践:Context / State

优维低代码技术专栏,是一个全新的、技术为主的专栏,由优维技术委员会成员执笔,基于优维7年低代码技术研发及运维成果,主要介绍低代码相关的技术原理及架构逻辑,目的是给广大运维人提供一个技术交流与学习的平台。 优维…

第六篇:什么是Prometheus Operator

Prometheus Operator简介 Prometheus Operator 是 CoreOS 开发的基于 Prometheus 的 Kubernetes 监控方案,也是目前功能最全面的开源方案。 Prometheus是一个开源的系统监控和报警系统,现在已经加入到CNCF基金会,成为继k8s之后第二个在CNCF…

如何练习笔试中的ACM模式? 这个网站上线了!

7月18日,卡码网 在朋友圈里正式内测,同时也迎来了第一批用户。 经过半个月的不断调试,解决各种问题,现在终于可以正式发布了。 截止发文,卡码网已经迎来了第一千位卡友。 【图片】 卡码网地址:https://k…

MySQL高级篇第5章(存储引擎)

文章目录 1、查看存储引擎2、设置系统默认的存储引擎3、设置表的存储引擎3.1 创建表时指定存储引擎3.2 修改表的存储引擎 4、引擎介绍4.1 InnoDB 引擎:具备外键支持功能的事务存储引擎4.2 MyISAM 引擎:主要的非事务处理存储引擎4.3 Archive 引擎&#xf…