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 # 设置上游
热门推荐
变压器的组成、原理、作用及分类你还傻傻搞不清!一文让你搞懂
官方发布5种减肥药!国家卫健委出手减重
在PubMed数据库中如何检索文献
杨瀚森:从CBA到NBA,中国篮球新星的崛起之路
单招考试揭秘:轻松应对的方法
文天祥最有名的诗句,如何展现英雄气概?
4 月新机潮之前,搞清楚这些“L”开头的屏幕技术
工厂做电路安装维护!考电工证能否点亮职业前途?
薰衣草的味道对人体有害吗
详解“气象干旱等级” 感兴趣你就看过来
鼠标的CPI和DPI真的没有区别吗
化学元素化合价记忆口诀的全面解析与应用
長跑前、中、後的碳水化合物補充策略
女生名字寓意独立自信大气
刷牙流血不会痛?当心!这可能是牙周病的警讯!
你的孩子有肥胖风险吗?预防儿童肥胖需要避哪些“坑”
儿童脾脏受伤的症状
法院怎样收取诉讼费用
41岁男子开车突发脑中风,脑中风离年轻人究竟有多近?
在充满干扰的世界中保持专注的 7 个习惯
汽车喇叭线怎样穿过车门?穿线过程中怎样避免损坏线路?
安庆美食排行榜前十名
打螺丝孔的机器种类与应用解析
住房公积金被封存后如何处理?了解一下!
干货讲堂 | 变压器空载损耗、负载损耗以及阻抗电压的计算
科学看待素食主义:营养均衡才是健康之道
瑜伽种类分哪些(详解11种常见的瑜伽种类)
眼睛泪囊炎的症状有哪些?如何判断泪囊炎的表现?
导热硅脂怎么选?为你的设备找到导热伴侣!
东西资本市场最强世纪联姻:港交所提议与伦交所合并