0

アジャイル開発手法を採用したので、ソースコードをより頻繁にリリースすることになりました。これには、より繰り返されるタスクも含まれていましたが、手作業で実行しても結果は得られません...「アジャイル」。

私には2つの永続的なブランチがあります。マスター(安定したソフトウェア)、開発(開発バージョン)、および各機能の他のすべてのブランチで、開発にマージされます。

より具体的には、リリースプロセス(開発->マスター)には次の手順が含まれます(1.0.5バージョンをリリースすると仮定します)。

まず、新しいブランチを作成します。ここでは、リリース固有のカスタマイズをほとんど行うことができません。

git checkout -b release1.0.5 develop

次に(この場合)Railsアプリでリビジョン部分ビューを編集します(アプリケーションフッターにリビジョン番号を表示するために使用されます)

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

次に、変更をコミットしrelease1.0.5(通常は「updatedrev#」というメッセージを表示)、、、、ソースを本番環境にアップロードし、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

これは、1日に3/4回実行すると、非常に面倒です(本番サーバーでのみ認識されるバグをハードフィックスするためかもしれません)。もちろん、「make-release」などのコマンドを使用して、これらすべてを自動的に実行し、リリース番号をパラメーターとして使用することもできます。

カスタムgitコマンドについてはすでに読みましたが、プロジェクト固有であるため(別のプロジェクトでは、そのような操作を実行する必要はありませんでした)、コマンドを現在のリポジトリに関連付けて、起動しないようにすると便利です。たくさんのコマンドがあり、プロジェクトごとに1つずつグローバルに共有されます。それを行う方法はありますか?

4

1 に答える 1

0

git flowあなたにぴったりのようですね。

于 2012-06-25T16:49:25.230 に答える