2012-01-13 16 views
9

githubでソフトウェアリリースを扱うための良いアプローチは何ですか?私のレポhttps://github.com/wheresrhys/jQuery-flickbookには、すべてのsrcファイルとビルドファイルが、ビルドされた(縮小された)バージョンのjavascriptと共に含まれています。githubでリリースを管理する

しかし、次のバージョンのリリースに移行すると、たとえばjquery.flickbook-0.5.min.jsファイルをリリースディレクトリにコピーします。どの程度までこれを自動化できますか?(antとgitブランチとタグを使用して)、または手動で実行する必要がありますか?

答えて

14

これは(注:これはmasterがあなたの「参照」ブランチであると仮定します):私はそれを行うだろう方法です

  • 新しいバージョンをリリースする準備ができたら、ブランチx.y-release上を作成しますmasterをチェックしてください(git checkout -b x.y-release master);
  • あなたの縮小バージョンを追加してコミットしてください。
  • タグを作成x.ygit tag x.y - マンページを参照したい場合は、「タグオブジェクト」も作成できます)。
  • タグ(ブランチではない)(git push theremote --tags、またはさらにgit push theremote x.y)を押します。
  • 完了した場合は、マスターに戻ります(git checkout master)。
  • 必要に応じて、リリースブランチをローカルで削除します(git branch -D x.y-release)。

これは縮小さバージョンmasterにその方法を行うものではありませんが、タグは任意の分岐があるだけのようrefspecあるようにすべてがある意味、タグで終わるん決してを意味します。

+0

私はこの記事http://nvie.com/posts/a-successful-git-branching-model/を見てきました。これはうまくいくものですが、1人の開発者がいる単純なプラグインでは大したことですそれに取り組んでいます。開発ブランチを設定することをお勧めします。また、あなたのバージョン管理のアプローチをそれに対応させることができますか? – wheresrhys

+0

開発ブランチが必要かどうかは、あなた次第です。 1つまたは複数の機能をテストする場合には便利です。いずれにしても、あなたが他のブランチをマージする "参照"ブランチが必要になるかもしれませんが、いずれにせよ私が与えたトリックはうまくいくでしょう。 – fge

+0

よろしく - 完全に働いた。私はGITがマスターブランチの私の空のリリースフォルダをコミットさせないようにしていましたが、最終的に私はshodulが.gitignoreファイルを入れてしまったと考えました。 – wheresrhys