我在 Git上维护一个项目的4个分支,结构如下. 主人 学生 老师 认证 问题是我在最后创建了“authentication”分支,并从这个分支添加了一些代码.现在,我切换到“老师”分支继续工作.但是
>主人
>学生
>老师
>认证
问题是我在最后创建了“authentication”分支,并从这个分支添加了一些代码.现在,我切换到“老师”分支继续工作.但是,我需要在“身份验证”模块中添加一些功能来处理“教师”模块.但我还没有完成“身份验证”模块的合并.用git处理这个问题的正确方法是什么?谢谢.
听起来你的分支相互依赖,这会给你带来麻烦.分支机构的依赖性可能是由于分支越来越大,包含太多东西而引起的.这意味着你可以从早期合并较小的东西中受益!但是,在“完成”之前,您似乎不希望将教师或学生合并为主人.
听起来你需要一个可以合并完成但尚未准备好发布的工作的地方.
如果你认为master是一个只有完成功能的分支,也许你需要另一个名为develop的分支,允许没有整个功能,但是合并了较小的步骤?
然后你可以这样做:
>做一些与老师相关的功能,合并他们开发
>为学生相关的功能开始一个新的分支,合并他们也开发
>重复这个直到开发看起来像你可以发布的东西
> merge develop to master并添加标签新版本
这意味着无论您在教师工作期间做了哪些系统改进,在学生工作期间,您也可以快速获得这些改进.同样适用于身份验证等其他功能.
Don’t let your feature branches stay unmerged for more than a few days.
Unmerged work is waste!
更多阅读:A successful Git branching model