当前位置: 首页 > article >正文

【github】git基础用法 git flow工作模式 常用命令

参考:
https://blog.csdn.net/qq_42780289/article/details/97945300
https://blog.csdn.net/qq_46921028/article/details/114904431

git

基础操作

git主要用来多人代码协同工作,首先进行对git 简单操作进行介绍

首先简单分为三个区:

  1. workspace:字面意思,可以理解为你目前本地目录是什么样子就是什么样子。
  2. repository:本地会有一个地方,用来暂存你目前比较确定可以上传到远程的文件
  3. remote:远程,也就是所有人可以看到的一个公共区域

简单理解为一个是本地区,一个是远程区,但需要有一个地方暂存信息,也就是上面的repo

三个区域如何交互的呢?

这里盗图

在这里插入图片描述

每一个区域如何交互一目了然。

大致工作流程:

  1. 将远程代码pull/clone下来
  2. 写代码
  3. commit 到本地的repo去
  4. 最后Push到远程大家都能看见

但这里还需要引入另外的一个概念,叫做分支

引入分支的理由:如果没有分支,大家都针对远程仓库的这么一个镜像进行同时办公,那么这样的日志会非常凌乱,如果出BUG非常难解决。

所以才有了分支

当然,上面提及,git分为远程与本地,所以分支也有本地与远程之分,有一些分支在本地,有些分支在远程所有人都可见。

分支最主要只有一个master主分支与其他,master必有,其他都是自己人为设定的。

引入分支之后,大致工作流程就变成:

  1. 将远程master分支clone下来
  2. 本地根据master分支clone另外一个分支
  3. 在自己本地创建的分支进行修改
  4. 改完之后将分支丢到云端
  5. 在远程对管理员申请pr,将自己分支与master合并

提及了一个新的东西,叫做pr

本地分支可以进行合并操作,而远程分支也可以进行合并,只不过远程大家都需要master分支,所以比价严谨,需要有管理人员完成code review没问题才会进行合并。

git flow

其实就是一套开发准则,好处是回溯文件比较好看。

在这里插入图片描述
也就是在master基础上还有一个develop。所有人都针对develop修改,只有最终确定了才修改。

一个功能模块就针对一个feature分支修改。
最后需要准备release开启一个分支,进行测试,如果有问题直接针对release修改,然后合并一下develop。

hotfix在出现临时bug的时候进行开启,即用即删。

在远程应该也只有两个分支,一个master与自己的feature分支,没问题就申请pr,然后管理人员审核进行合并

常用命令

# 远程拉代码
git clone xxx
git pull origin xxx

# 根据name2复制一个分支name1
git checkout -b {branch_name1} {branch_name2}
#切换分支,没有name就是查看所有分支
git branch {branch_name}
# 删除分支
git checkout -d {branch_name}

# 将确定文件加入暂存区
git add {file_name}
# 将add文件加入本地repo并且加上注释
git commit -m '{comment}'

#将name分支与当前所在分支进行合并(本地,--no-ff表示合并规则
git merge --no-ff {branch_name}

# 将当前分支推送到远程
git push origin {branch_name}


http://www.kler.cn/news/355908.html

相关文章:

  • 解决React中的Hooks闭包陷阱
  • Linux历史
  • 基于SSM公廉租房维保系统的设计
  • 【vue】指令补充+样式绑定+计算属性+侦听器
  • Vite+Vue 3+TS环境搭建
  • OpenCV高级图形用户界面(8)在指定的窗口中显示一幅图像函数imshow()的使用
  • 【Linux线程】Linux线程编程基础:概念、创建与管理
  • MicroPython rp2-LVGL 固件编译记录
  • EF Core 中避免 SQL 注入的三种写法
  • 前端SSR框架(Next、Nuxt)利用宝塔面板部署
  • 文生图模型
  • 【Windows】DevOps PowerShell实现读取ini文件 生成登陆凭证 发送文件到远程服务器 远程服务器执行指令 实现fabric1的基础功能
  • 【论文阅读】Bi-Mamba+: Bidirectional Mamba for Time Series Forecasting
  • Flutter 与 React Native - 详细深入对比分析(2024 年)
  • 六万字77道Spring面试题总结(2024版)
  • WPF基础权限系统
  • C++内存对齐机制简介
  • 纯css 轮播图片,鼠标移入暂停 移除继续
  • C++初阶
  • 云服务解决方案,针对小程序、网页、HTML5等轻量化视频解决方案