![]() |
1
17
获取master并创建分支:
为了继续进行更改,请在master上进行更改,并在执行时将其合并到特殊分支中。
或者,在一次提交中进行所有与事件相关的特殊更改,然后使用
|
|
2
2
“临时代码”?在Git中,我们使用分支。在Git中提交是非常轻量的,与其他系统相比,分支只是带有少量逻辑连接的提交的名称(或引用)是非常轻量的。 逻辑的一小部分就是引用会自动更新到最后一次提交。这几乎就是分支的全部。这意味着在Git中创建和销毁分支是快速、简单甚至安全的,因为没有真正创建或删除任何分支。删除之后,您仍然可以通过提交ID引用分支头(是的,在它被垃圾收集之前,它仍然存在,甚至只有在没有其他引用的情况下才会发生这种情况)。 几乎Git中的每个命令都将对提交的引用作为参数。对于Git合并也是如此。您不是在合并分支,而是在合并提交。是的,您键入“git merge”,但同样,分支只是提交的名称。只不过如此。既然您只需要将事件的提交分组在一起,就给它们一个名称。 所以正确的做法是为事件创建一个分支。或者可能是两个:“事件主机”和“事件开发”。现在,在“event dev”中为事件开发代码。如果你遇到了一个需要在主代码中修复的bug,隐藏并切换到正常的“dev”分支,编写修复代码并提交。切换回“event dev”,从“dev”合并,然后弹出stash。继续开发,一旦完成,提交和测试。如果可以,将“event dev”合并为“event master”。这也将包含修复。请注意,修复程序尚不在“master”中。 如果您需要将修复合并到“master”中,您只需按常规方式进行,因为修复位于“dev”中。 基本上,在此设置中,您可以:
如果您需要额外的灵活性,请创建更多的分支。对于超级灵活性,您可以选择将单个提交提交提交到分支中,但一般来说,我建议不要这样做(只有当您真正知道自己在做什么时才这样做)。 最后,我应该指出这个工作流程在Git中是很自然的。实际上,“开发”中的开发和“主控”中的拉式变更甚至不是最好的概括。习惯上,为正在开发的每个特性或模块创建一个开发分支,并将这些分支合并到“dev”中。 我认为使用Git的正确心态是:“我今天想编写什么代码?功能X。好的,我们创建分支“功能X”并开始黑客攻击。你的那件事也没什么不同。 现在,我知道我要告诉你的是,你应该从一开始就做些什么,而这对现在没有多大帮助。你需要修复你的树,因为-看起来-你对事件的更改与对“dev”分支的正常更改混合在一起。因此,您的问题是如何正确地创建“event dev”,只包含对事件所做的更改,并同时将它们从“dev”中删除。 是时候重写历史了。这将是多么困难,这取决于变化的性质。例如,如果所有的更改都属于一个目录,那么事情就更容易了。 以下是我将要做的(没有更好的了解):
可能是微风,也可能是噩梦。预先检查每个提交(git-show,你可以把它看作一个补丁),决定要做什么(最终不要选择cherry-pick,只编辑文件会更容易),如果不确定-猜猜-创建一个分支,在那里工作,看会发生什么,合并它如果高兴,放弃它,然后再试一次。 到目前为止,我还没有提到它,但是当然,您可以复制整个树,包括git文件,并且在副本上工作是100%安全的。 从一开始就做好是相当容易的。现在修好,好吧,祝你好运。:) |
![]() |
3
1
…进行特定事件更改…
…更改另一个特定事件…
在这一点上, 主人 分支仍然完整,事件特定的更改位于 事件 分支机构。如果在 事件 使用分支 重碱 …
另一个答案建议合并 主人 进入之内 事件 但是 重碱 通常是更好的方法。一 重碱 剥离主题分支上的提交,提取更新的 主人 转发然后在顶部重新应用主题分支更改…就像主题分支更改是对最新版本的master所做的一样。 在您的场景中,当事件结束时,只需删除 事件 分支机构。 |
![]() |
4
1
按照我的非专利方法汇总您的承诺:
你可以用
现在你的承诺是一个单一的。现在,您可以使用revert或执行cherry-pick来选择一个没有它的分支。 |
![]() |
5
0
GIT回复 它将删除您需要撤消的任何提交或提交范围。推动公开回购也是安全的。 |
![]() |
6
0
根据我的经验,有些特殊事件有一种反复发生的方式。因此,这里要考虑的另一个解决方案是创建一个配置选项来支持处理特殊事件,以便在需要时打开和关闭它。 |
![]() |
7
-1
我相信 stash 做你想做的。 |
![]() |
Harry · 如何在编译时获取克隆的git仓库的标签 5 月前 |
![]() |
Ooker · 如何从blob中删除秘密? 5 月前 |
![]() |
hasdrubal · git日志图智能分支过滤器 6 月前 |
![]() |
J. Doe · 为什么git中没有跟踪git文件? 6 月前 |