2017-08-28 8 views
1

コードがいくつかの基準に一致する場合、たとえば//failcommitのような特別なコメントが含まれている場合に、インデックスがコミットされないようにIDEAを設定できますか?IntelliJ IDEA VCSのコミットに失敗するルール

IDEAは、変更されたファイルにまたは//fixmeというコメントがある場合に警告します。私は似たようなものを設定したいと思いますが、警告の代わりにコミットアクションをブロックする必要があります。

+0

わかりません。あなたはCI技術とブランチングを使って、同じことを広く実現することができます。 –

答えて

3

intellijではなくgitでコミットのチェックと失敗を行うのはどうですか?その後、あなたが使っているIDEは関係ありません。それが受け入れ可能ならば、ターゲットコメントが見つかると失敗するgit pre-commitフックを設定できます。 https://git-scm.com/book/gr/v2/Customizing-Git-Git-Hooks

例「FIXME」がどこにも発見された場合に失敗したプリコミットフック:https://gist.github.com/kuy/5d1151fd5897a9b84c06

+0

合理的に聞こえる。このようにするつもりです。 IDEAがこれらのフックをどのように処理するか知っていますか? –

+1

IDEAはgitコマンドを発行し、git自体はデフォルトでフックを実行します(IDEAのRun GItフックオプションを明示的に無効にしない限り)。ほとんどのフックは、インデックスを操作しない限り動作します。 –

2

はこれを設定するには、IDEAでの設定はありません

Gitはドキュメントをフックします。これを行うために独自のCheckinHandlerを開発し、Before commitセクションに追加することができます。

質問はなぜこれが必要ですか?コミットをキャンセルできるようにする警告は、なぜオプションではないのですか? TODOのカスタムパターンを設定するだけで済みます。

gitフックを使用する方法もあります。

ところで、IDEAはインデックスをコミットしません。 git commit --onlyを使用して個々のファイルをコミットします。

+0

あなたの質問に答えて、なぜあなたはこれを必要としていますか?私たちが気づいている間違ったアプローチのためにおそらくそうです。 'TODO'と' FIXME'コメントは通常、債務をマークするために使用されるので、後でコミットして処理する必要があります。その結果、警告ダイアログをスキップすることは習慣(悪い癖)になります。しかし、ブロッカー(バックエンドの誰かがそれを修正するまで1日か2日間)を解決するためには、何らかのコミットをすべきではない本当に汚いハックを行う必要があります。コミットを防ぐためにそのハッキングをマークしたい場合はそうです。 –

+0

私はgitフックで行くだろう –

関連する問題