1

http://hgbook.red-bean.com/read/handling-repository-events-with-hooks.htmlで説明されているように、不正な形式のコミット メッセージでチェックインを拒否する小さなフックを記述できると考えました。問題ありません。私が遭遇する問題は、次のワークフローです。

開発者が 10 個のローカル コミットを行い、そのうちのいくつかが不正な形式であり、それらを中央リポジトリにプッシュすると、すべてが拒否されますが、ロールバックは 1 回しか機能しないため、古いコミット メッセージを編集することはできません..

これをどのように解決しますか?

4

2 に答える 2

2

HistEdit 拡張機能を使用すると、コミット メッセージをローカルで変更し、変更全体をメイン リポジトリにプッシュ バックできます。

于 2010-09-24T11:48:56.537 に答える
0

一元管理されたプロジェクトではないため、開発者に同じ precommit フックを使用してコミット メッセージをチェックするように強制することはできないと思いますか?

@gizmo の回答に代わるものは、開発者が MQ を使用できるようにし、プッシュする前にコード レビューを義務付けることです (または、誰かがそれらからプルすることをお勧めします)。その後、レビュアー (または一部のレビュー スクリプト) が不正なメッセージを見つけた場合、開発者は を使用qrefreshしてメッセージを変更できます。

ただし、そのワークフローではいくつかの点に注意する必要があります。

  1. qfinishハッシュを変更しない場合でも、未完成のパッチを決してプッシュ/プルしないでください。めちゃくちゃにするのは簡単すぎる。
  2. qcommitレビューのために物事を送信する前に、毎回開発者に確認してください。
于 2010-09-24T14:23:56.160 に答える