git - git pull 不更新合并分支的分支
问题描述
我在使用 git 时遇到问题。因此,有一个新的分支(a)已提交审核。在审查期间,创建了另一个分支 (b)。分支 a 被合并到创建 a 和 b 的主分支 dev 中。
现在在分支 b 中,分支 a 中存在一些可以使用的代码。我拉开了 dev 分支,我确实得到了合并的代码。但是当我检查到分支 b 以完成时,那些在分支 a 中并合并到 dev 中的更改不会出现。
我很确定我搞砸了 git 流程。从 dev 分支中创建的分支 b 如何能够将分支 a 的合并更改?
解决方案
这是意料之中的,Git 分支是多人同时处理单个代码库的一种方式。去做这个; 它使用给定时间的代码库状态作为参考。因此,当您的分支b
处于dev
某个与分支不同的位置时a
。
以下应该是您创建新分支时分支的样子B
(2)
/------- A ---------
----(1)---- Dev ---(2)-----------------
\--------- B -----
现在沿着这条线的某个地方将分支A
合并回Dev
(3)。所以这应该是分支的样子
/------- A ----------\
----(1)---- Dev ---(2)----(3)----------------
\--------- B -----------
现在,当您在Dev
分支上时,它知道A
(3) 中的更改,因为它被合并回来了。
但是分支B
不知道这一点,因为它Dev
在分支A
(3) 合并回来之前从 (2) 合并。
要使分支B
与 内联Dev
,您现在有两个选择。
- 合并
Dev
为B
.git checkout b; git merged dev
- 重新定位
Dev
到B
.git checkout b; git pull --rebase origin dev
. 如果你是 git 的菜鸟,不要推荐这个。它有时可能会很快出错。
推荐阅读
- php - Google Workspace、服务帐户和 Google Drive API File Watch Channels - 使用模拟的正确方法?
- java - 使用拆分和替换方法替换值的位置
- ios - Swift Package Manager - 发布方案崩溃
- docker - Raspberry Pi 4 上 Docker 内的 CEC 客户端
- angular - 在 Angular 中使用“ngx-datatable”迭代 Firestore 数据
- netcdf - 通过nco将不同维度大小的netCDF文件合并为一个文件
- javascript - 赛普拉斯:用力单击:true 将碰撞箱移动到另一个位置
- c# - 页面加载时禁用“添加新记录”按钮
- algorithm - 覆盖 DAG 中最大节点的路径
- unit-testing - 很想在 Spock 中重置方法模拟?