検索

ホームページ  >  に質問  >  本文

java - コードインスペクションを転送するにはどうすればよいですか?

私がこれまでに知っているコード検査は、通常、継続的統合フェーズ中に行われます。これによりコードの品質は確保できますが、コストがまだ少し高いと個人的には考えています。これは主に次の点に反映されています。
開発者が自分のブランチで開発を完了してからサーバーにプッシュするのは困難です。その後、継続的に統合してコードをチェックし、コード スタイルに一貫性がないことが判明した場合、このフィードバック プロセス全体に時間がかかりすぎます。

現在開発中の Java プロジェクトは、(checkstyle、pmd など) のようなコードをチェックできるようにしたいと考えています。これらのチェックは、コード ウェアハウスにプッシュした後に行うのではなく、ローカルで送信する前にパスする必要があります。期待される目標達成すべきことは次のとおりです:

  1. 提出前にコード検査に合格する必要があります。そうでない場合、提出は許可されません

  2. IDE に依存せず、ツールのサポートを利用するのが最善です

  3. コード検査ツールの構成ファイルはバージョン管理を行うのに最適です

現在考えられている解決策 (まだ試していません):
checkstyle と他のプラグインを Maven に統合する
git/hooks のスクリプトを使用して、検証のために Maven を呼び出します。失敗します。送信は許可されません

我想大声告诉你我想大声告诉你2728日前904

全員に返信(3)返信します

  • 巴扎黑

    巴扎黑2017-05-31 10:37:13

    開発者はリリースできないブランチ (dev など) にのみプッシュできます。正式にリリースされたブランチ (master など) の開発者には直接プッシュする権利はありません。

    checkstyle などのプラグインをサーバーにインストールします。チェックが成功すると、dev がマスターにマージされます。チェックが失敗すると、マージは許可されません。

    返事
    0
  • 巴扎黑

    巴扎黑2017-05-31 10:37:13

    正しく理解されましたね、これらのことを行うために git フックが使用されます

    返事
    0
  • 为情所困

    为情所困2017-05-31 10:37:13

    sonar qube を使用してチェックし、jenkins と連携して継続的インテグレーション中にチェックします。

    開発者に後で修正を加える時間を与えるため、提出前に検査に合格する必要はありません。

    個人的には、コードがコンパイルでき、単体テストと結合テストが通過できればリリースしてもよいと考えています。コード検査で見つかった問題は次のバージョンのイテレーションに組み込むことができ、開発チームのリーダーは開発者が変更を加えるのをただ見守るだけで済みます。

    返事
    0
  • キャンセル返事