Git拓展篇:Gitee代码托管平台操作及SSH通道配置详解
创作时间:
作者:
@小白创作中心
Git拓展篇:Gitee代码托管平台操作及SSH通道配置详解
引用
CSDN
1.
https://m.blog.csdn.net/hgz3315867391/article/details/146144722
本文是Git系列教程的第三篇,主要讲解如何使用Gitee代码托管平台以及SSH通道的配置。通过本文的学习,你将掌握如何在Gitee上创建和管理远程仓库、配置SSH密钥、进行标签操作以及忽略文件等实用技能。
一、概念原理
简单的理解,除了本地仓库以外的仓库,我们都称之为远程仓库。
作用:存储(备份)、共享、协同工作
二、常见的代码托管平台
本质上是一个别人搭建好的服务器,用于托管本地仓库相关的内容(文件、代码),常见的有:
- GitHub
- Gitee
拓展:可以使用Gitlab搭建自己的私服(私人服务器)
三、操作
基于gitee(码云)平台操作
- 注册账号
在官网使用手机号和邮箱都可以注册
在gitee中,创建远程仓库
创建本地仓库
# 创建本地仓库
$ mkdir git-test
$ git init
- 创建第一个版本提交
# 创建README.md
$ touch README.md
# 修改README.md
$ vim README.md
$ git add .
$ git commit -m '初始化版本'
- 添加远程仓库
# 添加远程仓库
$ git remote add origin https://gitee.com/addmdxwg/git-test.git
- 推送
#推送到远程仓库
$ git push -u origin "master"
注意:
- 本地的内容修改后,必须及时推送到远程仓库中
- 同时,在推送之前,我们一般先进行拉去操作
课堂练习
- 在gitee中,注册帐号
- 在gitee中,创建一个开源仓库
- 在本机中,创建一个本地仓库
- 添加README.md文件和一些文件,并在README.md中添加”好好学习,天天向上”
- 提交本地仓库
- 在本地仓库中,添加远程仓库(先基于http协议)
- 把本地仓库的内容推送到远程仓库中
- 克隆远程仓库
- http协议:每次拉,推都有可能需要输入账号密码
- git协议:经配置,每次拉、推操作都不需要账号和密码 – 方便
$ git clone url
# 基于HTTP协议
$ git clone https://gitee.com/addmdxwg/git-test.git
$ git clone git@gitee.com:addmdxwg/git-test.git
- SSH配置
基于Git协议进行通信
第一步:创建SSH key
$ ssh-keygen -r rsa -C "3315867391@qq.com"
然后一直回车
- 私钥:id_rsa
- 公钥:id_rsa.pub
- known_hosts : 建立本地仓库与远程仓库之间的信任
第二步:把上面查看的公钥,复制到github、gitlab、coding、gitee中,进行公钥的部署,这里以gitee为例:
用户可以通过主页右上角**「设置」->「安全设置」->「SSH公钥」->「添加公钥」**,添加生成的 public key 添加到当前账户中
- 拉取
1.拉取合并分支
# 方法一 : 拉取并且合并
$ git pull
# 方法二 :拉取之后在合并
$ git fetch
$ git merge
2.拉取 + 合并指定分支
# 把远程仓库 origin 的 master分支 拉取过来与本地的testing 合并
$ git pull origin master : testing
# 如果你是要与当前分支合并 可以直接省略冒号+前面的
# 拉取远程仓库的test与本地当前分支合并
$ git pull origin test
# 配置上游后可以直接简写
$ git pull origin
$ git pull
# 注意:我们也可以这么做
# 首先各自分支拉取自己的分支内容
# 然后在本地进行合并分支
# 最后,推送远程仓库
- 标签操作
1)创建本地标签并推送
#创建本地标签
$ git tag v1.0.0
#推送到远程仓库
$ git push origin v1.0.0
#推送多个标签
$ git push origin --tags
2)删除标签
# 删除本地标签
$ git tag -d v1.0.0
# 删除远程仓库标签
$ git push origin :refs/tags/v1.0.0
$ git push origin --delete v1.0.0
- 忽略文件
是一个名称为 .gitignore
的特殊文件,用于定义相关的文件,不纳入Git版本控制,因此,称之为忽略文件。
$ cat .gitignore
*.[oa] # 忽略所有以.o或.a结尾的文件
*~ # 忽略所有以~结尾的文件
.gitignore
文件 的格式规范如下:
- 所有空行或者以
#
开头的行都会被 Git 忽略。 - 可以使用标准的
glob
模式匹配,它会递归地应用在整个工作区中。 - 匹配模式可以以(
/
)开头防止递归。 - 匹配模式可以以(
/
)结尾指定目录。 - 要忽略指定模式以外的文件或目录,可以在模式前加上叹号(
!
)取反
所谓的 glob
模式 是指 shell 所使用的简化了的正则表达式。
*
:匹配零个或多个任意字符;[abc]
:匹配任何一个列在方括号中的字符 (要么是 a,要么是 b,要么是 c);?
:只匹配一个任意字符;- 如果在方括号中使用短划线分隔两个字符, 表示所有在这两个字符范围内的都可以匹配(比如
[0-9]
表示匹配所有 0 到 9 的数字)。 - 使用两个星号(
**
)表示匹配任意中间目录,比如a/**/z
可以匹配a/z
、a/b/z
或a/b/c/z
等
# 忽略所有的 .a 文件
*.a
# 但跟踪所有的 lib.a,即便你在前面忽略了 .a 文件
!lib.a
# 只忽略当前目录下的 TODO 文件,而不忽略 subdir/TODO
/TODO
# 忽略任何目录下名为 build 的文件夹
build/
# 忽略 doc/notes.txt,但不忽略 doc/server/arch.txt
doc/*.txt
# 忽略 doc/ 目录及其所有子目录下的 .pdf 文件
doc/**/*.pdf
四、对远程仓库进行操作
- 本地分支推送到远程分支
# 创建本地分支并切换
$ git checkout -b test
# 对分支进行各种操作。。。 后提交
$ echo 11 > 1.txt
$ git add .
$ git commit -m 'test'
# 提交分支
# 在提交之前同步一下远程仓库的文件,保持一致
$ git pull
# 方法一,提交到名字一样的,没有就自己创建
$ git push origin test
# 方法二
$ git push origin test[本地分支]:test[远程分支]
# 方法三
$ git push -u origin main # 设置上游
热门推荐
《龙架构生态白皮书(2024年)》发布:龙芯自主CPU设计已达国际主流水平
印在时间长河中的龙河口记忆——写在龙河口水库建库66周年之际
【Nature子刊】郑大一附院合作发文:有前景的脑血管病治疗策略
分页查询实战:手把手教你用 PageHelper 实现优雅的分页功能!
公务员试用期内能休几天年假?
公务员请假制度管理规定中,不同假期的时长如何规定?
留学中介服务霸王条款有哪些?这些条款合法吗?
益生菌:体内的健康微生物
手自一体变速箱:深度解析与驾驶技巧
变速箱“手自一体”是啥意思?若是这都清楚,可别说自己是老司机
户口为什么这么值钱:探究其背后的价值所在
老人走失如何防范?这把"钥匙"帮他们回家
2025年情侣旅游攻略:五大城市浪漫之旅,300元/天打造专属回忆
餐厅融资与贷款指南
什么食物有助于提高孕妇免疫力?
HR招聘技巧中的简历筛选标准是什么?
膳食纤维不只帮助排便,还能减少脂肪吸收!搭配油炸物一起吃促进代谢
牙龈萎缩是什么引起的?怎么才能治好?
品酒有度 | 《诗经》之"酒":酒礼文化的蕴藉
普通家庭为什么坚持要孩子读书?
回力鞋:承载三代人记忆的国货传奇
感冒吃什么饭菜比较好 感冒期间的饮食禁忌
蛋白质四级结构新角度解析及测定方法
AI技术在呼吸健康诊断领域的前沿进展
离婚案件律师收费标准详解
儿童急性淋巴细胞白血病的治疗
葡萄酒品鉴:专业指南与技巧分享
松露的保存和清洗方式
留学生回国指南:从美国到中国的全面攻略
守护平安 | 进社区、进家庭、进企业……反诈“警囊”遍地开花