gpt4 book ai didi

git - 我怎样才能实现这个 Git 测试工作流程

转载 作者:太空狗 更新时间:2023-10-29 14:16:57 26 4
gpt4 key购买 nike

我有一些添加到产品中的功能可以显示诊断信息。因为此信息不应在生产中泄露,所以分支是在 master 之上的一些提交。

A-B-C-D-E (master)
\
F-G (local_testing)

提交 FG 使本地测试变得容易得多。现在要添加一个功能并确保它正常工作,我检查了一个基于 local_testing 的新分支 new_feature

git checkout -b new_feature local_testing
# Do work
git commit -a -m "H"

提交 H 添加所需的功能。

A-B-C-D-E (master)
\
F-G (local_testing)
\
H (new_feature)

我一直在交互地 rebase 以将提交 H 移动到提交 F 之前。然后我进行硬重置以将 new_feature 指向新的 H' 的提交对象移动。

git rebase -i master
git reset --hard H

所以提交历史看起来像:

A-B-C-D-E (master)
\
H' (new_feature)
\
F'-G' (local_testing)

然后我将 master 快进到 new_feature 并删除 new_feature

git checkout master
git merge new_feature
git branch -d new_feature

这感觉有点笨拙(尤其是硬重置)。有没有更好的方法来实现这个流程?

最佳答案

一个解决方案是使用 git cherry-pick .您可以从分支 master 直接应用提交 H。

git cherry-pick <H>

如果你有多个新提交,你可以使用 git rebase 压缩它们.您还可以多次使用 git cherry-pick 命令。

关于git - 我怎样才能实现这个 Git 测试工作流程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46878078/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com