GIT,可以参数这篇,需要加以理解,文字比较冗余,还请见谅

git的使用步骤一定要记住了;

清除gi他凭证命令:

git config --global --unsetcredential.helper

  • 从服务器通过git,下载项目,假如你的服务器上只有master分支
  • 本地开发,local就有master分支,然后create Branch form master,
  • 新增一个dev分支
  • 切换到dev分支之后;
  • 在继续以dev为基点,
  • 然后create Branch form dev,
  • 新增dev-feature分支

这样做的好处是,当你在dev-feature开发任务时候,临时接到一个命令,说线上有bug,

那么就可以直接从master分支中在新建一个dev-feature2出来改写你的代码,

  • 你从 master 切出 dev-feature2,修好并测试。

  • 合并回 master(本地合或者发 PR/MR),并推送到远程。

  • 线上部署。这时候,那个 Bug 在线上已经消失了。

  • 此时状态master 已经是 2.0 版本(带补丁),而你的 dev-feature 还是基于 1.0 版本(有 Bug)切出来的。

这时候你的 dev-feature 正在写新功能,它急需那个 Bug 修复的补丁。你有两种合并方式:

方案 A:直接把 master 合进 dev-feature(最推荐,最稳)

这是最正规的操作。因为 master 刚刚拿到了 dev-feature2 的成果,它现在是最正确的基准。

  • 操作 :切换到 dev-feature 分支,点 IDEA 里的 Merge 'master' into 'dev-feature'

  • 好处:你的开发分支立刻拿到了 Bug 补丁。如果 Bug 修复的地方正好和你正在写的代码有冲突,IDEA 会提醒你,你现在顺手就把冲突解了,不用等到最后上线才痛苦。

方案 B:直接把 dev-feature2 合进 dev-feature

  • 操作 :切换到 dev-feature,点 Merge 'dev-feature2' into 'dev-feature'

  • 好处 :快!不需要等 master 更新。

  • 缺点 :如果 dev-feature2 还没经过最终测试,你可能会把不成熟的补丁带进开发分支。

3. 完美的"交活"三部曲(重点来了!)

当你准备把 dev-feature 合并到 dev 时,为了保证万无一失,老司机通常会连点三次:

  1. 第一步(对齐爷爷) :切换到 dev,执行 Merge 'master' into 'dev'

    • 作用:确保 dev 拿到了最新的线上补丁,跟爷爷同步了。就是刚才的那个dev-feature2补丁
  2. 第二步(预演合并) :切换到 dev-feature,执行 Merge 'dev' into 'dev-feature'

    • 作用:在你自己的分支上先看看,加上了 dev 的最新代码后,会不会跟你的新功能起冲突。有问题在自己分支解决,别弄乱了公共的 dev
  3. 第三步(正式上交) :切换回 dev,执行 Merge 'dev-feature' into 'dev'

    • 作用:这时候合并是"顺水推舟",因为你在第二步已经解决过冲突了。

dev-feature2改动代码,提交合并到master上,

开发过程中;

本地的dev-feature代码改了,然后要合并到dev之前,需要commit一下,才可以合并到dev

然后再继续进行提交到远程的dev;

dev分支,作为基点,不进行代码的修改和更新,只是作为本地和远程仓库之间通讯的桥梁作用

本地保持一个干净的 dev 用来同步远程,是一个极好的习惯。

每次提交dev之前,需要先更新代码,解决冲突,在提交,push,

这样就可以解决大部分的代码冲突问题了;

若果说凭证问题;

可以先在window下:

控制面板\用户帐户\凭据管理器

清除也是可以

  1. 完美的"交活"三部曲(重点来了!)

当你准备把 dev-feature 合并到 dev 时,为了保证万无一失,老司机通常会连点三次:

  1. 第一步(对齐爷爷):切换到 dev,执行 Merge 'master' into 'dev'。

• 作用:确保 dev 拿到了最新的线上补丁,跟爷爷同步了。

  1. 第二步(预演合并):切换到 dev-feature,执行 Merge 'dev' into 'dev-feature'。

• 作用:在你自己的分支上先看看,加上了 dev 的最新代码后,会不会跟你的新功能起冲突。有问题在自己分支解决,别弄乱了公共的 dev。

  1. 第三步(正式上交):切换回 dev,执行 Merge 'dev-feature' into 'dev'。

• 作用:这时候合并是"顺水推舟",因为你在第二步已经解决过冲突了。

💡 总结一下:

• Merge 'master' into 'dev':是向下兼容。让中间分支(dev)跟上最高准则(master)。

• Merge 'dev-feature' into 'dev':是向上贡献。让你的成果进入公共区域。

相关推荐
jolimark2 小时前
Windows下如何用GCC编译C语言?轻便方法分享
c语言·windows·git·mingw·gcc编译器
△曉風殘月〆3 小时前
一文带你掌握Visual Studio中集成的git功能
git·visual studio
不爱吃糖的程序媛4 小时前
鸿蒙三方库适配读懂 `thirdparty/AES/.gitignore`:哪些文件不该进 Git?
git·elasticsearch·harmonyos
天若有情67317 小时前
【C++原创开源】formort.h:一行头文件,实现比JS模板字符串更爽的链式拼接+响应式变量
开发语言·javascript·c++·git·github·开源项目·模版字符串
海盗123418 小时前
在群晖NAS上使用Git Server
git
y小花18 小时前
git常用指令
git
华科大胡子18 小时前
开源项目 Git 贡献全流程拆解
git
极地星光18 小时前
工程中:Git 子模块(submodule) vs 直接依赖(源码/库/包管理器)
git
无限进步_20 小时前
【C++&string】大数相乘算法详解:从字符串加法到乘法实现
java·开发语言·c++·git·算法·github·visual studio