git使用

- 自动化运维架构

image

- 版本控制系统

1. 集中式(例如svn)

image

2. 分布式(例如git)

image

- Git 创建仓库(中央仓库)

[root@master home]# useradd git
[root@master home]# passwd git
[root@master home]# su - git
[git@master ~]$ mkdir demo.git
[git@master demo.git]$ pwd
/home/git/demo.git
[git@master demo.git]$ git init --bare

- Git 开发机

[root@slave-1 git]# pwd
/home/git
[root@slave-1 git]# git clone git@192.168.2.60:/home/git/demo.git
[root@slave-1 .git]# cat /home/git/demo/.git/config
[core]
        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true
[remote "origin"]
        url = git@192.168.2.60:/home/git/demo.git
        fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
        remote = origin
        merge = refs/heads/master
[root@slave-1 ~]# git config --global user.name zeng
[root@slave-1 ~]# git config --global user.email zeng@163.com
[root@slave-1 demo]# git add hello.py
[root@slave-1 demo]# git commit -m "hello.py"
[root@slave-1 demo]# git log

commit 45ba2802f1c2f22003eba67eed67ae719b33b385
Author: zeng <zeng@163.com>
Date:   Wed Mar 2 13:04:00 2022 +0800

    hello.py

[root@slave-1 demo]# git push origin master

- Git 工作区

image

- Git 常用命令

image

- Git 工作流程

image

- Git开发流程:

1. 克隆远程版本库:git clone
2. 新建开发分支:git checkout –b dev
3. 将修改的文件添加到暂存区:git add
4. 提交暂存区到仓库区:git commit
5. 查看历史提交记录:git log
6. 获取别人提交的最新代码:git pull
7. 将本地代码推送到远程服务器:git push

- Git 分支管理

• master 主分支,最终上线分支,具有质量保证的、可正常运行的分支,禁止直接代码提交。
• develop 测试分支,用于合并feature分支。

  1. release 预发布分支,由feature分支合并,测试通过后合并到master分支。
  2. feature 新功能开发分支,开发完合并到develop,进行集成测试。
开发阶段
1、开发者基于master创建一个dev分支
2、在dev分支进行工作,周期性提交,每天推送一次
3、第二天,先对dev进行pull

测试阶段
1、测试基于dev分支创建一个release分支
2、QA对release分支进行测试,有bug提交给开发
3、开发修复bug
4、QA测试通过,团队负责人将releasee合并到master

上线阶段
1、采用master分支上线

例子:将dev分支合并到master分支:

1、切到master分支
git checkout master
2、把dev分支的代码合并到当前分支
git merge dev
3、提交到远程服务器
git push origin master

- Git分支管理与上线发布流程

image

- gitlab安装

yum install https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-13.2.3-ce.0.el7.x86_64.rpm
posted @   曾某某scau  阅读(24)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示