git中的遴选cherry-pick和变基rebase的使用

部署运行你感兴趣的模型镜像

遴选

将2分支上的某些commit提交到3分支上:

1. 切到3分支上

2. 选中2分支上需要抽取的commit,按shift可以多选

3. 点击遴选

4. 如果遇到冲突,解决冲突,并标记已解决即可

5. 提交

注意: 一次遴选过后,想要继续遴选,需要打开终端,执行git cherry-pick --quit 命令才可继续遴选

变基:

起因:从master分支上开出来的b1分支,而b1在合并到master之前,开了一个新的分支b2;当b1合并到master分支后,b2中并不包含b1部分,合并到master上,可能会在master上产生冲突;为了避免在master上产生冲突,选择变基rebase

1. 切到b2分支

2. 点击master上的最后一个节点(也可以是目标节点)

3. 右击变基

4. 若存在冲突,本地解决冲突过后,不要push,而是点击动作->继续变基(可能会有n次继续变基)

5. 点击强制推送,将本地的代码强制替换远程的代码 git push --force

注意: 强制推送的设置: 偏好设置->高级->允许强制推送

您可能感兴趣的与本文相关的镜像

Qwen-Image-Edit-2509

Qwen-Image-Edit-2509

图片编辑
Qwen

Qwen-Image-Edit-2509 是阿里巴巴通义千问团队于2025年9月发布的最新图像编辑AI模型,主要支持多图编辑,包括“人物+人物”、“人物+商品”等组合玩法

### `git rebase` 的使用 `git rebase` 是 Git 中用于重新应用提交到不同点的命令。它常用于将一个分支的更改整合到另一个分支中,同时保持线性历史记录。这种操作在开发个人分支并希望将其更新到最新主分支时非常有用。 要执行 `rebase` 操作,可以使用以下命令: ```bash git checkout feature-branch git rebase main ``` 如果在 `rebase` 过程中遇到冲突,Git 会暂停并在冲突文件中标记出问题区域。解决冲突后,需要添加已解决的文件,并继续 `rebase` 流程: ```bash git add <resolved-file> git rebase --continue ``` 若想跳过当前冲突提交,可使用 `git rebase --skip`;如需取消整个 `rebase` 操作,则使用 `git rebase --abort` [^4]。 对于更复杂的场景,例如想要修改特定的历史提交或调整提交顺序,可以使用交互式 `rebase`。通过指定要编辑的提交范围来启动交互模式: ```bash git rebase -i HEAD~5 ``` 这将打开一个文本编辑器,列出最近五次的提交。在此界面中,可以通过改每行前的操作指令(如 `pick`, `edit`, `squash` 等)来决定如何处理每个提交。 ### `git cherry-pick` 的使用 `git cherry-pick` 命令允许开发者将某个特定提交从一个分支复制到另一个分支上。这对于只希望合并部分更改而不是整个分支的情况很有帮助。 本用法如下所示: ```bash git checkout target-branch git cherry-pick <commit-hash> ``` 这里的 `<commit-hash>` 是你想转移的那个提交的唯一标识符。一旦运行了这个命令,Git 将尝试将该提交引入当前检出的分支,并创建一个新的提交。如果存在冲突,同样需要手动解决,并且完成之后需要运行 `git add` 来标记冲突已解决,然后使用 `git cherry-pick --continue` 继续操作 [^3]。 ### 注意事项与最佳实践 - 在共享仓库或者公共分支上进行 `rebase` 操作应当谨慎,因为这会重写项目历史,可能导致其他协作者的工作出现问题。 - 使用 `cherry-pick` 时要注意确保所选提交是独立的,不会依赖于未被选取的其他更改,否则可能会导致构建失败或功能异常。 - 当面对简单的一对一提交迁移时,优先考虑使用 `cherry-pick`;而在需要维护清晰线性历史的情况下,尤其是个人开发分支向主干合并代码时,推荐使用 `rebase` [^3]。 ---
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值