意向:によりレガシーコードのヒープに、私は環境が徐々に改善するために私のプル要求に追加または変更行だけをlintのたいと思います。gitコミットの範囲から追加され更新された行番号のリストを取得するには?
入力:ベースブランチの名(master
)、私のPRのブランチの名前(例えばhonzajavorek/my-cool-feature
)、最後のハッシュ(例えば53253a3e8d9b1e3ed7d45b91e045c59d50aefdf0
)機能ブランチにコミットします。
出力:影響を受ける(追加または変更された、明らかに削除されていない)行番号が各ファイルに含まれているため、それらを含むようにlinter出力をフィルタリングできます。私は1つのライナーを探していないよ
、私は短いbashのを書くといいよ/ Pythonの/だけの合理的な複雑性(複数の行)と、これを行うためのスクリプトをNode.jsの。
更新日:ただ見つけたGit diff with line numbers (Git log with line numbers)。実際には簡単な作業ではありません:(
私はそれがあまりにもループしていると思います - 最も外側のループは分割され、egrepのために1つの正規表現を生成することができます – MacHala
'git diff -name-only master..feature'と' git blame -b master..feature'と同様の方法で、より堅牢なソリューションを提供します。 –