2012-01-05 16 views
7

コミットメッセージのチェンジセットにタグを付けるという解決策を探しています。私の "タグ" についてはコミットメッセージとチェンジセットのタグ付け

のようなものです:

  • コードが
  • ユーザー目に見える変化をクリーンアップ
  • は、データベース構造(ALTER TABLE)
  • ドキュメントの変更を修正

これまではSVNを使っていましたが、gitに切り替える必要があります。標準があれば、trac、redmineなどのツールがこれを使うことができます。

は、私がこのような質問に答えるようにしたい:

  • 私はシステムを更新した場合、どのような変更は、顧客のために表示されている、または はそれだけでmaintanceアップデートのですか?
  • データベーススキーマは2つのバージョン間で変更されていますか?

背景:私はDEV、TESTとPRODシステムとの間で同期するためにユニゾンを使用し、今まで

。しかし、unisonはバージョン管理(これは瞬間のSVN)について何も知らない。私はgitに切り替えたい。そして、私は速く見たい、何が変化している。

例:私はTESTとPROD間の変更を確認したいです。私は、ソースコードの変更を見たくないが、コミットメッセージ。しかし時には最大100のコミットがあります。ここでは、重要でない変更を除外するフィルターが必要です。

答えて

7

私は次のタグを使用したい:

ADD adding new feature 
FIX a bug 
DOC documentation only 
REF refactoring that doesn't include any changes in features 
FMT formatting only (spacing...) 
MAK repository related changes (e.g., changes in the ignore list) 
TEST related to test code only. 

このタグは、常にコミットメッセージの最初のものですし、問題追跡システムからの簡単な説明および/または問題-idに続きますそれが存在する場合。

私はSVNとGitのでこれらのタグを使用し、これまでのところ彼らは非常に便利見つけました。あなたの編集に答えるために

:私はそれらのタグをコミット好きな理由 です。コミットが振る舞いを変更するかどうかはすぐにわかります。データベーススキームが定期的に変更された場合や、これらが変更された場合や非常に重要な場合は、そのタグを導入することができます。

私はまた、適切な場合にはコミットメッセージを1にこれらのタグを組み合わせるのが好き。たとえば、「test fooのTEST DOC設定」などです。データベースのための追加のDBタグ付き

、あなたは簡単にデータベースに関連した変化を追跡することができます。

+0

+1です。しかし、そのタグを使って変更についてもっと知る必要がある場合はどうすればいいですか?例えば私は、FIXタグで解決された欠陥(そのレポーター、その臨界、その再生ステップなど)についてもっと知る必要があります。 – hsalimi

+0

これでタグの後にすべての情報を追加することができます。たとえば、 "FIX issue foo reported by john doe; ..." – mort

+0

Oh my God !!!!!!!あなたはどのように報告したいのですか? – hsalimi

1

私は私の課題追跡で問題を設定し、それぞれの変更を割り当てることを好みます。 jiraのような既知の問題追跡ツールを使用すると、変更セットで解決された問題を選択することができます。問題を選択すると、問題の説明が自動的に変更セットのメッセージに配置されます。彼らは将来的にフォローアップすることができますし、あなたの課題トラッカーに報告することもできます。

+0

私は質問を更新しました。タグは次のような質問に答える必要があります。「システムを更新した場合、どのような変更が顧客に見えるのか、それとも単なる更新ですか? – guettli

+0

問題に接続していないコミットをどのように処理しますか?たとえば、いくつかのドキュメントやリファクタリングを追加または修正する場合は、 – mort

+0

@guettli:これらの情報はすべてあなたの問題に残されています。さらに、変更を要求した情報、この変更が適用されたソースコードのバージョン、これらの変更が影響を受ける最初のリリースなどのその他の情報は、問題追跡ツールの問題に保持されます。 – hsalimi

3

私はTYPO3のからタグシステムを使用しているほとんどの時間:http://wiki.typo3.org/CommitMessage_Format_(Git)

それは、このようなメッセージコミットにタグを使用しています。私は常に課題追跡の発行数にポップもちろん[TAG] Short message を。 [TAG] JIRA-123 Short message

TYPO3のタグ:

可能なタグは以下のとおりです。

  • 【特徴】:それはこのようなものになりますように、我々は、JIRAを使用している新機能を(も小さな追加)。ほとんどの場合、追加機能になりますが、削除することもできます。これはv4の "master"ブランチでのみ発生する可能性があります。古いブランチでは新しい機能が許可されていないからです。これに対する例外は、対応するリリースマネージャーとケースバイケースで話し合わなければなりません。
  • [BUGFIX]:バグの修正。
  • [TASK]:上記のカテゴリに含まれていないもの、例:コーディングスタイルクリーンアップ。
  • [API]:APIが変更されました。メソッドまたはクラスが追加または削除されました。メソッドのシグネチャまたは戻り値の型が変更されました。これは、TYPO3の公開APIのみを参照します。

さらに他のフラグは、特定の状況下で添加されることがあります

  • [!]:ブレイキングチェンジ。このパッチの後、何かが以前とは違って動作し、ユーザー/管理者/拡張機能の開発者は何かを変更する必要があります。 "マスター"でのみ発生する必要があります。
  • [WIP]:作業中です。このフラグは、変更の最終バージョンが利用可能になると削除されます。 WIPとマークされた変更はマージされません。
  • [セキュリティ]:セキュリティ上の問題が修正されたことを視覚的に示します。このタグはセキュリティチームによって使用されます。セキュリティの問題が見つかった場合は、まずセキュリティチームに連絡してください。

例トピックの説明:

  • [BUGFIX]プリペアドステートメント
  • でtslib_fe
  • [BUGFIX] [SECURITY] SQLインジェクションの脆弱性にHttpStatusExceptionsを投げる【特徴】[CONF]を追加オプションをリストのMODで検索ボックスを非表示にする
  • [FE] [FEATURE]高度なフロントエンド編集をTERに移動
  • は[!!!] [TASK] [!!!] [API](非推奨メソッドのリダイレクトを削除t3lib_sqlengine
  • を削除)[API]
  • t3lib_userAuth
  • からHTTPステータス例外
の例外階層を作成します。良い答えは
関連する問題