git punish-私がいつも欠いていたチーム

時々、 git blameに促されて同僚に行き、愛情を込めて彼らの目を見て、痛いことについて話したいです。 そのような場合、 git punish存在しないことは想像を絶するようです。

最初は「I am PR」に投稿するつもりでしたが、技術的な詳細については本当に話したかったので、膝の上に集めたgit-punish.ioへのリンクはお許しください。

タスクは単純でした。興奮が浸食され、 git blameコマンドの出力とオンラインのページへのリンクを解析して、 git punishを通じて呼び出される何かを書くまで。

もちろん、最初のものは私に起こりました

git config --global alias.punish "...shell command..."


しかし、あなたは多くのことをしないことがすぐに明らかになりました。 誰かが2番目の決定についてCoderwallに良いアドバイスをしました。 アプローチはすぐに美しく、制限がないように見えました。 $PATHリストされている任意の場所で、gitに新しいコマンドを追加する実行可能ファイルgit-%command%を作成できることがgit-%command%ます。

次のようになりました。

 #!/bin/bash git blame --line-porcelain $@ | curl --data-binary @- http://git-punish.io/create 


--line-porcelainは、各行の拡張出力を有効にします。これは解析に便利です。 ユーザーパラメータ$@を最後に追加します。 次にPOSTすべての出力をgit-punish.io/create POSTます。

出力の分析にはほとんど関心がありませんが、本当に見たい場合は、 サービスによって生成された短いURLが端末に表示されます。

そのようなものです。 私はアドバイス、ヒント、その他の非難/罰をうれしく思います。

UPD

念のため、免責事項、私はそれがここで必要であることに気づきました。 これはコミックサービスです。

Source: https://habr.com/ru/post/J267025/


All Articles