我现在正在使用Git的团队中,我们有一个相当好的工作流程。我们有一个中央仓库,有两个分支,dev和master。我们创建本地分支来完成个人任务。当准备好时,我们合并到dev中。然后,当一切准备就绪时,我们合并到master,并标记所有发布。如果多个开发人员需要更直接地协作完成任务,我们可以为他们创建另一个可能是临时的远程分支,以便共享补丁。这对我们来说效果很好,但还有两个问题。
一个问题是备份问题。当然,大部分代码库都有备份。每台克隆存储库的计算机都有大部分代码。但是,某人在一天内编写的代码在他们合并到dev并推送之前没有备份。如果他们正在处理的任务非常复杂,可能要等几天才能提交合并和推送。我们如何确保这些正在进行中的代码被备份到一个集中的安全位置?只需使用Git之外的某些备份解决方案吗?
第二个问题是监控员工进展的问题。经理们希望能够看到开发人员每天编写的代码。如果有一天你没有发布任何内容,那么看起来你整天都没做什么。我们需要一种每天展示我们工作的方法,而不会强制我们提交和推送还没有准备好进行提交、合并和推送的代码。
我们考虑的一个解决方案是为我们创建的每个本地分支在中央存储库上创建一个远程分支。这可能有效,但即使我们经常删除旧的未使用分支,它也会变得非常混乱。管理所有这些需要大量额外的工作。
我们如何满足这些业务需求,而不干扰我们的Git工作流程?
一个问题是备份问题。当然,大部分代码库都有备份。每台克隆存储库的计算机都有大部分代码。但是,某人在一天内编写的代码在他们合并到dev并推送之前没有备份。如果他们正在处理的任务非常复杂,可能要等几天才能提交合并和推送。我们如何确保这些正在进行中的代码被备份到一个集中的安全位置?只需使用Git之外的某些备份解决方案吗?
第二个问题是监控员工进展的问题。经理们希望能够看到开发人员每天编写的代码。如果有一天你没有发布任何内容,那么看起来你整天都没做什么。我们需要一种每天展示我们工作的方法,而不会强制我们提交和推送还没有准备好进行提交、合并和推送的代码。
我们考虑的一个解决方案是为我们创建的每个本地分支在中央存储库上创建一个远程分支。这可能有效,但即使我们经常删除旧的未使用分支,它也会变得非常混乱。管理所有这些需要大量额外的工作。
我们如何满足这些业务需求,而不干扰我们的Git工作流程?