0

由于我采用了敏捷开发方法,我发现自己更频繁地发布源代码。这也涉及更多重复的任务,手工完成不会导致......“敏捷”。

我确实有 2 个永久分支:master(稳定软件)、develop(开发版本)以及每个功能的所有其他分支,它们将合并到 develop。

更具体地说,发布过程(develop->master)包括以下步骤(假设我们发布的是 1.0.5 版本):

首先,我确实创建了一个新分支,我可以在其中进行一些特定于版本的自定义

git checkout -b release1.0.5 develop

然后(在这种情况下)我在 rails 应用程序中编辑修订部分视图(用于在应用程序页脚上显示 rev #)

vim app/views/layouts/_revision.html.haml

然后我提交更改release1.0.5(通常使用消息“更新的 rev #”),,,,,将源上传到生产checkout master,,最后。git merge --no-ff release1.0.5git tag v1.0.5git checkout developgit merge --no-ff release1.0.5git branch -d release1.0.5

当一天完成 3/4 次时,这是非常乏味的(也许要硬修复仅在生产服务器上识别的错误)。当然,最好有一个命令——比如“make-release”来自动完成所有这些,也许将发布号作为参数。

我已经阅读了有关自定义 git 命令的信息,但是您知道,它是特定于项目的(在另一个项目上我不需要执行此类操作),因此将命令与当前存储库相关会很好,避免出现有大量命令,每个项目一个全局共享。有没有办法做到这一点?

4

1 回答 1

0

git flow sounds like a good match for you.

于 2012-06-25T16:49:25.230 回答