更新 版本控制.md

This commit is contained in:
wxin 2025-04-23 13:09:46 +08:00
parent 72c1eca92e
commit eeb661f1d4

View File

@ -1,434 +1,434 @@
<h2><center>版本控制</center></h2> <h2><center>版本控制</center></h2>
------ ------
## 一Git 简介 ## 一Git 简介
### 1. 介绍 ### 1. 介绍
- `Git`是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目 - `Git`是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目
- `Git``Linus Torvalds`为了帮助管理`Linux`内核开发而开发的一个开放源码的版本控制软件 - `Git``Linus Torvalds`为了帮助管理`Linux`内核开发而开发的一个开放源码的版本控制软件
- `Git`与常用的版本控制工具`CVS``Subversion`等不同,它采用了分布式版本库的方式,不必服务器端软件支持 - `Git`与常用的版本控制工具`CVS``Subversion`等不同,它采用了分布式版本库的方式,不必服务器端软件支持
### 2. Git 工作流程 ### 2. Git 工作流程
1. 克隆 Git 资源作为工作目录 1. 克隆 Git 资源作为工作目录
2. 在克隆的资源上添加或修改文件 2. 在克隆的资源上添加或修改文件
3. 如果其他人修改了,你可以更新资源 3. 如果其他人修改了,你可以更新资源
4. 在提交前查看修改 4. 在提交前查看修改
5. 提交修改 5. 提交修改
6. 在修改完成后,如果发现错误,可以撤回提交并再次修改并提交 6. 在修改完成后,如果发现错误,可以撤回提交并再次修改并提交
![](accents\image-202504220001.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220001.png)
### 3. git 的工作区、暂存区和版本库 ### 3. git 的工作区、暂存区和版本库
**工作区:**就是你在电脑里能看到的目录 **工作区:**就是你在电脑里能看到的目录
**暂存区:**英文叫`stage`,或`index`。一般存放在`git`目录下的`index`文件(`.git/index`所以我们把暂存区有时也叫作索引index **暂存区:**英文叫`stage`,或`index`。一般存放在`git`目录下的`index`文件(`.git/index`所以我们把暂存区有时也叫作索引index
**版本库:**工作区有一个隐藏目录`.git`,这个不算工作区,而是`Git`的版本库 **版本库:**工作区有一个隐藏目录`.git`,这个不算工作区,而是`Git`的版本库
![](accents\image-202504220002.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220002.png)
### 4. Git 安装 ### 4. Git 安装
```bash ```bash
[root@git ~]# yum -y install git curl-devel expat-devel gettext-devel openssl-devel zlib-devel git-core [root@git ~]# yum -y install git curl-devel expat-devel gettext-devel openssl-devel zlib-devel git-core
``` ```
## 二Git 使用 ## 二Git 使用
`Git`提供了一个叫做`git config`的工具,专门用来配置或读取相应的工作环境变量 `Git`提供了一个叫做`git config`的工具,专门用来配置或读取相应的工作环境变量
这些环境变量,决定了`Git`在各个环节的具体工作方式和行为。这些变量可以存放在以下三个不同的地方: 这些环境变量,决定了`Git`在各个环节的具体工作方式和行为。这些变量可以存放在以下三个不同的地方:
- `/etc/gitconfig`文件:系统中对所有用户都普遍适用的配置。若使用`git config`时用`--system`选项,读写的就是这个文件 - `/etc/gitconfig`文件:系统中对所有用户都普遍适用的配置。若使用`git config`时用`--system`选项,读写的就是这个文件
- `~/.gitconfig`文件:用户目录下的配置文件只适用于该用户。若使用`git config`时用`--global`选项,读写的就是这个文件 - `~/.gitconfig`文件:用户目录下的配置文件只适用于该用户。若使用`git config`时用`--global`选项,读写的就是这个文件
- 当前项目的`Git`目录中的配置文件(也就是工作目录中的`.git/config`文件):这里的配置仅仅针对当前项目有效 - 当前项目的`Git`目录中的配置文件(也就是工作目录中的`.git/config`文件):这里的配置仅仅针对当前项目有效
### 1. Git 用户信息 ### 1. Git 用户信息
配置个人的用户名称和电子邮件地址: 配置个人的用户名称和电子邮件地址:
```bash ```bash
[root@git ~]# git config --global user.name "wxin" [root@git ~]# git config --global user.name "wxin"
[root@git ~]# git config --global user.email "wxin@163.com" [root@git ~]# git config --global user.email "wxin@163.com"
``` ```
### 2. 查看配置信息 ### 2. 查看配置信息
```bash ```bash
[root@git ~]# git config --list [root@git ~]# git config --list
user.name=wxin user.name=wxin
user.email=wxin@163.com user.email=wxin@163.com
用户名和邮箱和github上一致 用户名和邮箱和github上一致
``` ```
这些配置我们也可以在`~/.gitconfig`看到,如下所示: 这些配置我们也可以在`~/.gitconfig`看到,如下所示:
```bash ```bash
[root@git ~]# cat ~/.gitconfig [root@git ~]# cat ~/.gitconfig
[user] [user]
name = wxin name = wxin
email = wxin@163.com email = wxin@163.com
``` ```
注意: 注意:
```bash ```bash
git config --global 参数 git config --global 参数
取消代理: 取消代理:
git config --global --unset http.proxy git config --global --unset http.proxy
git config --global --unset https.proxy git config --global --unset https.proxy
设置代理: 设置代理:
git config --global http.proxy http://domain.local\vsilva:Passw0rd@proxyServer:8080 git config --global http.proxy http://domain.local\vsilva:Passw0rd@proxyServer:8080
出现各种 SSL certificate problem 的解决办法: 出现各种 SSL certificate problem 的解决办法:
git config --global http.sslVerify false git config --global http.sslVerify false
``` ```
### 3. 常用的 git 命令 ### 3. 常用的 git 命令
```bash ```bash
# 初始化 # 初始化
git init git init
# 将某一个文件添加到暂存区 # 将某一个文件添加到暂存区
git add main.cpp git add main.cpp
# 将文件夹下的所有的文件添加到暂存区 # 将文件夹下的所有的文件添加到暂存区
git add . git add .
# 将暂存区中的文件保存成为某一个版本 # 将暂存区中的文件保存成为某一个版本
git commit -m 'note' git commit -m 'note'
# 查看所有的版本日志 # 查看所有的版本日志
git log git log
# 查看现在暂存区的状况 # 查看现在暂存区的状况
git status git status
# 查看现在文件与上一个提交-commit版本的区别 # 查看现在文件与上一个提交-commit版本的区别
git diff git diff
# 回到上一个版本 # 回到上一个版本
git reset --hard HEAD^ git reset --hard HEAD^
# XXX为版本编号回到某一个版本 # XXX为版本编号回到某一个版本
git reset --hard XXXXX git reset --hard XXXXX
# 从主分支pull到本地 # 从主分支pull到本地
git pull origin master git pull origin master
# 从本地push到主分支 # 从本地push到主分支
git push -u origin master git push -u origin master
# push默认主分支 ... # push默认主分支 ...
git push git push
``` ```
### 4. Git 使用 ### 4. Git 使用
`ssh`链接: `ssh`链接:
客户机上产生公钥上传到`gitlab``SSH-Keys`里,`git clone`下载和`git push`上传都没问题,这种方式很安全 客户机上产生公钥上传到`gitlab``SSH-Keys`里,`git clone`下载和`git push`上传都没问题,这种方式很安全
`ssh`连接`github` `ssh`连接`github`
登录`github`,这是`github`的主页(如果没有账户需要注册) 登录`github`,这是`github`的主页(如果没有账户需要注册)
`Git`服务器生成秘钥: `Git`服务器生成秘钥:
```bash ```bash
[root@git ~]# ssh-keygen [root@git ~]# ssh-keygen
Generating public/private rsa key pair. Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'. Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase): Enter passphrase (empty for no passphrase):
Enter same passphrase again: Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa. Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub. Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is: The key fingerprint is:
SHA256:HhgQDguY3A8fAlR+unlWK3liO+o/f8bsQ0+sFHQE5zw root@git SHA256:HhgQDguY3A8fAlR+unlWK3liO+o/f8bsQ0+sFHQE5zw root@git
The key's randomart image is: The key's randomart image is:
+---[RSA 2048]----+ +---[RSA 2048]----+
|=+=.o. .oo | |=+=.o. .oo |
|oo.B o .+. | |oo.B o .+. |
| ..*.o . .E | | ..*.o . .E |
| oo o . . | | oo o . . |
| . ..S o | | . ..S o |
| o o..+ o | | o o..+ o |
| o B o* + | | o B o* + |
| +o= B . | | +o= B . |
| .ooo+.+.. | | .ooo+.+.. |
+----[SHA256]-----+ +----[SHA256]-----+
[root@git ~]# cat .ssh/id_rsa.pub [root@git ~]# cat .ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDTniLfB2SsuRFonPOD94/uCyc8x/wSgkmW0Jq8eRoFvW3+DNHon+iwqufSnkodlkGn2zUun9y6vRGJnU69+/hEFSupZ/eCyUNrnPwwE+BDy2CsRr73pckMmXJERw7SedT5VhDCHFYq6a4fxVZjLhhxbfhi55HisRNc99tJBopkXpOMutr9jvKC+p929Jva4COsqUSya3tHMyv9oXTNwaZCibuIlfUghntry7D3ONH6xV9UyFs8NDXR6fanxkDDBuDvQrxDYncf3Zyi5A7OIC5qJp9MGrftOvyKxFZN/ryzC/asac7StP7SqK7d17XBgwr8jr98JfQ8sVOruSUa6Qkj root@git ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDTniLfB2SsuRFonPOD94/uCyc8x/wSgkmW0Jq8eRoFvW3+DNHon+iwqufSnkodlkGn2zUun9y6vRGJnU69+/hEFSupZ/eCyUNrnPwwE+BDy2CsRr73pckMmXJERw7SedT5VhDCHFYq6a4fxVZjLhhxbfhi55HisRNc99tJBopkXpOMutr9jvKC+p929Jva4COsqUSya3tHMyv9oXTNwaZCibuIlfUghntry7D3ONH6xV9UyFs8NDXR6fanxkDDBuDvQrxDYncf3Zyi5A7OIC5qJp9MGrftOvyKxFZN/ryzC/asac7StP7SqK7d17XBgwr8jr98JfQ8sVOruSUa6Qkj root@git
``` ```
`Github`添加`Git`服务器秘钥: `Github`添加`Git`服务器秘钥:
![](accents\image-202504220003.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220003.png)
![](accents\image-202504220004.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220004.png)
![](accents\image-202504220005.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220005.png)
![](accents\image-202504220006.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220006.png)
![](accents\image-202504220007.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220007.png)
![](accents\image-202504220008.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220008.png)
![](accents\image-202504220009.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220009.png)
`git`服务器上创建项目并上传到`github` `git`服务器上创建项目并上传到`github`
```bash ```bash
# 创建本地仓库 # 创建本地仓库
[root@git ~]# mkdir /opt/wxin_cloud [root@git ~]# mkdir /opt/wxin_cloud
[root@git ~]# cd /opt/wxin_cloud/ [root@git ~]# cd /opt/wxin_cloud/
# 初始化本地仓库 # 初始化本地仓库
[root@git wxin_cloud]# git init [root@git wxin_cloud]# git init
初始化空的 Git 版本库于 /opt/wxin_cloud/.git/ 初始化空的 Git 版本库于 /opt/wxin_cloud/.git/
# 创建文件 # 创建文件
[root@git wxin_cloud]# echo "hello wxin" > wxin [root@git wxin_cloud]# echo "hello wxin" > wxin
# 将文件添加到本地暂存区 # 将文件添加到本地暂存区
[root@git wxin_cloud]# git add . [root@git wxin_cloud]# git add .
# 将文件提交到本地版本仓库 # 将文件提交到本地版本仓库
[root@git wxin_cloud]# git commit -m "hello" [root@git wxin_cloud]# git commit -m "hello"
[master根提交 8eec16d] hello [master根提交 8eec16d] hello
1 file changed, 1 insertion(+) 1 file changed, 1 insertion(+)
create mode 100644 wxin create mode 100644 wxin
# 为本地仓库添加指定的远程仓库 # 为本地仓库添加指定的远程仓库
[root@git wxin_cloud]# git remote add origin git@github.com:wxin712/wxin_cloud.git [root@git wxin_cloud]# git remote add origin git@github.com:wxin712/wxin_cloud.git
# 查看节点 # 查看节点
[root@git wxin_cloud]# git branch [root@git wxin_cloud]# git branch
* master * master
# 将文件上传到Github的远程仓库 # 将文件上传到Github的远程仓库
[root@git wxin_cloud]# git push -u origin master [root@git wxin_cloud]# git push -u origin master
Counting objects: 3, done. Counting objects: 3, done.
Writing objects: 100% (3/3), 209 bytes | 0 bytes/s, done. Writing objects: 100% (3/3), 209 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0) Total 3 (delta 0), reused 0 (delta 0)
remote: remote:
remote: Create a pull request for 'master' on GitHub by visiting: remote: Create a pull request for 'master' on GitHub by visiting:
remote: https://github.com/wxin712/wxin_cloud/pull/new/master remote: https://github.com/wxin712/wxin_cloud/pull/new/master
remote: remote:
To git@github.com:wxin712/wxin_cloud.git To git@github.com:wxin712/wxin_cloud.git
* [new branch] master -> master * [new branch] master -> master
分支 master 设置为跟踪来自 origin 的远程分支 master。 分支 master 设置为跟踪来自 origin 的远程分支 master。
``` ```
`github`查看: `github`查看:
![](accents\image-202504220010.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220010.png)
![](accents\image-202504220011.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220011.png)
注意:这样上传到`github`的分支不能跟`main`分支合并 注意:这样上传到`github`的分支不能跟`main`分支合并
### 5. 版本穿梭 ### 5. 版本穿梭
版本回退: 版本回退:
```bash ```bash
# 用 git log 命令查看: # 用 git log 命令查看:
# 每一个提交的版本都唯一对应一个 commit 版本号, # 每一个提交的版本都唯一对应一个 commit 版本号,
# 使用 git reset 命令退到上一个版本: # 使用 git reset 命令退到上一个版本:
[root@git wxin_cloud]# git log [root@git wxin_cloud]# git log
commit b0e63bbe3bf54ac7240c06c8fa31bd3f130702e9 commit b0e63bbe3bf54ac7240c06c8fa31bd3f130702e9
Author: wxin712 <1497427046@qq.com> Author: wxin712 <1497427046@qq.com>
Date: Tue Apr 22 17:57:37 2025 +0800 Date: Tue Apr 22 17:57:37 2025 +0800
modify modify
commit 8eec16d9cad6dd8df503ab2d346dc5aeb48d6fcb commit 8eec16d9cad6dd8df503ab2d346dc5aeb48d6fcb
Author: wxin712 <1497427046@qq.com> Author: wxin712 <1497427046@qq.com>
Date: Tue Apr 22 17:43:24 2025 +0800 Date: Tue Apr 22 17:43:24 2025 +0800
hello hello
[root@git wxin_cloud]# git reset --hard 8eec16d9cad6dd8df503ab2d346dc5aeb48d6fcb [root@git wxin_cloud]# git reset --hard 8eec16d9cad6dd8df503ab2d346dc5aeb48d6fcb
HEAD 现在位于 8eec16d hello HEAD 现在位于 8eec16d hello
[root@git wxin_cloud]# git push -f -u origin master [root@git wxin_cloud]# git push -f -u origin master
Total 0 (delta 0), reused 0 (delta 0) Total 0 (delta 0), reused 0 (delta 0)
remote: To git@github.com:wxin712/wxin_cloud.git remote: To git@github.com:wxin712/wxin_cloud.git
+ b0e63bb...8eec16d master -> master (forced update) + b0e63bb...8eec16d master -> master (forced update)
分支 master 设置为跟踪来自 origin 的远程分支 master。 分支 master 设置为跟踪来自 origin 的远程分支 master。
``` ```
查看结果: 查看结果:
![](accents\image-202504220012.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220012.png)
```bash ```bash
# 查看命令历史,以便确定要回到哪个版本 # 查看命令历史,以便确定要回到哪个版本
[root@git wxin_cloud]# git reflog [root@git wxin_cloud]# git reflog
8eec16d HEAD@{0}: reset: moving to 8eec16d9cad6dd8df503ab2d346dc5aeb48d6fcb 8eec16d HEAD@{0}: reset: moving to 8eec16d9cad6dd8df503ab2d346dc5aeb48d6fcb
b0e63bb HEAD@{1}: reset: moving to b0e63bb b0e63bb HEAD@{1}: reset: moving to b0e63bb
8eec16d HEAD@{2}: reset: moving to 8eec16d9cad6dd8df503ab2d346dc5aeb48d6fcb 8eec16d HEAD@{2}: reset: moving to 8eec16d9cad6dd8df503ab2d346dc5aeb48d6fcb
b0e63bb HEAD@{3}: reset: moving to b0e63bb b0e63bb HEAD@{3}: reset: moving to b0e63bb
8eec16d HEAD@{4}: reset: moving to 8eec16d9cad6dd8df503ab2d346dc5aeb48d6fcb 8eec16d HEAD@{4}: reset: moving to 8eec16d9cad6dd8df503ab2d346dc5aeb48d6fcb
b0e63bb HEAD@{5}: commit: modify b0e63bb HEAD@{5}: commit: modify
8eec16d HEAD@{6}: commit (initial): hello 8eec16d HEAD@{6}: commit (initial): hello
# 回退 # 回退
[root@git wxin_cloud]# git reset --hard b0e63bb [root@git wxin_cloud]# git reset --hard b0e63bb
HEAD 现在位于 b0e63bb modify HEAD 现在位于 b0e63bb modify
[root@git wxin_cloud]# git push -f -u origin master [root@git wxin_cloud]# git push -f -u origin master
Counting objects: 5, done. Counting objects: 5, done.
Writing objects: 100% (3/3), 240 bytes | 0 bytes/s, done. Writing objects: 100% (3/3), 240 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0) Total 3 (delta 0), reused 0 (delta 0)
remote: To git@github.com:wxin712/wxin_cloud.git remote: To git@github.com:wxin712/wxin_cloud.git
8eec16d..b0e63bb master -> master 8eec16d..b0e63bb master -> master
分支 master 设置为跟踪来自 origin 的远程分支 master。 分支 master 设置为跟踪来自 origin 的远程分支 master。
``` ```
查看结果: 查看结果:
![](accents\image-202504220013.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220013.png)
### 6. 分支管理 ### 6. 分支管理
创建分支: 创建分支:
```bash ```bash
# 创建dev分支然后切换到dev # 创建dev分支然后切换到dev
[root@git wxin_cloud]# git checkout -b dev [root@git wxin_cloud]# git checkout -b dev
切换到一个新分支 'dev' 切换到一个新分支 'dev'
# 查看当前分支 # 查看当前分支
[root@git wxin_cloud]# git branch [root@git wxin_cloud]# git branch
* dev * dev
master master
# 创建分支 # 创建分支
[root@git wxin_cloud]# git branch test [root@git wxin_cloud]# git branch test
``` ```
分支切换: 分支切换:
```bash ```bash
[root@git wxin_cloud]# git checkout master [root@git wxin_cloud]# git checkout master
切换到分支 'master' 切换到分支 'master'
[root@git wxin_cloud]# git branch [root@git wxin_cloud]# git branch
dev dev
* master * master
test test
``` ```
合并分支: 合并分支:
```bash ```bash
# 把dev分支的工作成果合并到master分支上 # 把dev分支的工作成果合并到master分支上
[root@git wxin_cloud]# git merge dev [root@git wxin_cloud]# git merge dev
更新 b0e63bb..4cc8b4f 更新 b0e63bb..4cc8b4f
Fast-forward Fast-forward
readme.txt | 1 + readme.txt | 1 +
1 file changed, 1 insertion(+) 1 file changed, 1 insertion(+)
create mode 100644 readme.txt create mode 100644 readme.txt
``` ```
删除分支: 删除分支:
```bash ```bash
# 删除dev分支了 # 删除dev分支了
[root@git wxin_cloud]# git branch -d dev [root@git wxin_cloud]# git branch -d dev
已删除分支 dev曾为 4cc8b4f 已删除分支 dev曾为 4cc8b4f
# 查看分支 # 查看分支
[root@git wxin_cloud]# git branch [root@git wxin_cloud]# git branch
* master * master
``` ```
### 7. GitHub 分支管理 ### 7. GitHub 分支管理
注意:`github`默认的分支是`main`而不是`master` 注意:`github`默认的分支是`main`而不是`master`
创建项目: 创建项目:
![](accents\image-202504220014.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220014.png)
![](accents\image-202504220015.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220015.png)
创建分支: 创建分支:
![](accents\image-202504220016.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220016.png)
![](accents\image-202504220017.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220017.png)
![](accents\image-202504220018.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220018.png)
新分支创建文件: 新分支创建文件:
![](accents\image-202504220019.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220019.png)
![](accents\image-202504220020.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220020.png)
![](accents\image-202504220021.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220021.png)
合并分支: 合并分支:
![](accents\image-202504220022.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220022.png)
![](accents\image-202504220023.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220023.png)
![](accents\image-202504220024.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220024.png)
![](accents\image-202504220025.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220025.png)
`main`分支验证是否合并成功: `main`分支验证是否合并成功:
![](accents\image-202504220026.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220026.png)
### 8. 使用 Github 上的项目 ### 8. 使用 Github 上的项目
下载仓库到本地: 下载仓库到本地:
```bash ```bash
[root@git ~]# cd /opt/ [root@git ~]# cd /opt/
[root@git opt]# git clone git@github.com:wxin712/wxin_cloud_test.git [root@git opt]# git clone git@github.com:wxin712/wxin_cloud_test.git
正克隆到 'wxin_cloud_test'... 正克隆到 'wxin_cloud_test'...
remote: Enumerating objects: 7, done. remote: Enumerating objects: 7, done.
remote: Counting objects: 100% (7/7), done. remote: Counting objects: 100% (7/7), done.
remote: Compressing objects: 100% (4/4), done. remote: Compressing objects: 100% (4/4), done.
remote: Total 7 (delta 0), reused 0 (delta 0), pack-reused 0 (from 0) remote: Total 7 (delta 0), reused 0 (delta 0), pack-reused 0 (from 0)
接收对象中: 100% (7/7), done. 接收对象中: 100% (7/7), done.
``` ```
进入工作目录,进行文件更新: 进入工作目录,进行文件更新:
```bash ```bash
[root@git opt]# ls [root@git opt]# ls
wxin_cloud wxin_cloud_test wxin_cloud wxin_cloud_test
[root@git opt]# cd wxin_cloud_test/ [root@git opt]# cd wxin_cloud_test/
[root@git wxin_cloud_test]# ls [root@git wxin_cloud_test]# ls
README.md wxin README.md wxin
[root@git wxin_cloud_test]# echo "github's cloud is update" > gitupdate [root@git wxin_cloud_test]# echo "github's cloud is update" > gitupdate
[root@git wxin_cloud_test]# git add . [root@git wxin_cloud_test]# git add .
[root@git wxin_cloud_test]# git commit -m "test update" [root@git wxin_cloud_test]# git commit -m "test update"
[main f67d4ae] test update [main f67d4ae] test update
1 file changed, 1 insertion(+) 1 file changed, 1 insertion(+)
create mode 100644 gitupdate create mode 100644 gitupdate
[root@git wxin_cloud_test]# git push -u origin main [root@git wxin_cloud_test]# git push -u origin main
Counting objects: 4, done. Counting objects: 4, done.
Delta compression using up to 4 threads. Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done. Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 324 bytes | 0 bytes/s, done. Writing objects: 100% (3/3), 324 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0) Total 3 (delta 0), reused 0 (delta 0)
remote: To git@github.com:wxin712/wxin_cloud_test.git remote: To git@github.com:wxin712/wxin_cloud_test.git
085d909..f67d4ae main -> main 085d909..f67d4ae main -> main
分支 main 设置为跟踪来自 origin 的远程分支 main。 分支 main 设置为跟踪来自 origin 的远程分支 main。
``` ```
`github`验证: `github`验证:
![](accents\image-202504220027.png) ![](http://182.92.143.66:40072/directlink/img/CI-CD/image-202504220027.png)