Git分支变基

Git分支变基


最近上级要求弄一个Git的使用说明,并且重点要说一下分支的处理。我尽管也在使用Git管理代码等,但分支这块还真没有真正去深究过,今天去查官网的资料,发现 官网的那说明有点前后矛盾,越看越糊涂,自己简单说下自己的理解。

官网解释

分支变基的原理是回到两个分支最近的共同祖先,根据当前分支(也就是要进行变基的分支 experiment)后续的历次提交对象(这里只有一个 C3),生成一系列文件补丁,然后以基底分支(也就是主干分支 master)最后一个提交对象(C4)为新的出发点,逐个应用之前准备好的补丁文件,最后会生成一个新的合并提交对象(C3’),从而改写 experiment 的提交历史,使它成为 master 分支的直接下游。
官方展示图
官方后面关于协同工作的描述
前面一个变基后是测试分支的副本,且是直接合并到主分支后面;后面的协同处理时变基产生的是根存档的下一级,直接取代以前的根存档C1的下一个存档C4。我验证出来应该第二张图的才是正确的。

自己的理解

在这里插入图片描述
借官方的图来说吧,在代码仓库里有源存档C1,有主程序员A和程序员B,主程序员A修改代码后存档C4,程序员B新建分支修改代码后存档为C5,与主程序员A的存档合并为存档C6,后来通过会议确定C4里的功能完全用不到,为了不给后面的人造成干扰,此时程序员B就在自己的分支处与元存档C1合并 并 进行 变基 操作,就产生存档C4’,此存档将取代原来存档C4在主存档中的位置(原来的主分支C4及其后续存档将独立出去),而且C4’直接继承原来主分支上C4的提交人和提交说明信息,如果在你变基的同时有人以C4为基础编了新的程序,在你变基后他又将程序上传上去了,那到时候远程仓库中将出现两个不同的存档C4的记录,有着不同的 SHA-1 校验值,却拥有相同的作者日期与说明。因此,一旦分支中的提交对象发布到公共仓库,就千万不要对该分支进行变基操作

仅是自己的一点初浅见解,如有错误,欢迎指出,谢谢!

在VSCode中进行git变基分支的操作可以按照以下步骤进行: 1. 首先,在VSCode中打开终端。可以使用快捷键Ctrl+`或者点击菜单栏的"终端"->"新建终端"来打开终端。 2. 在终端中输入以下命令来查看当前文件下载地址上的所有分支: ``` git branch --all ``` 3. 选择需要切换的分支,使用以下命令进行切换: ``` git checkout origin/develop ``` 4. 执行以下命令来拉取最新的代码: ``` git pull ``` 5. 接下来就可以进行变基操作了。具体的变基操作步骤可以参考引用\[2\]中提到的Git变基方法的使用。 请注意,以上步骤仅供参考,具体操作可能会因项目配置和个人需求而有所不同。建议在进行任何git操作之前,先备份代码或者咨询项目组成员。 #### 引用[.reference_title] - *1* [使用VSCode切换分支下载代码](https://blog.csdn.net/weixin_61088470/article/details/123095344)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [Git变基的用法](https://blog.csdn.net/shengzhe8688/article/details/124833051)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [使用vscode创建git分支](https://blog.csdn.net/cherry_vicent/article/details/127052042)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值