.NET 也有 Husky 了
熟悉前端開發的同學應該知道,前端工程化工作流中有一個很常用的工具:Husky。Husky 方便我們在項目中添加 git hooks,比如配合 lint-staged 在代碼提交前進行自動檢查編碼規范,再比如配合 commitlint 對提交時填寫的 message 內容進行檢查。對于多人參與的開源項目或公司團隊項目,這些工具非常有用,它可以確保每個人都使用同樣的規范和工作流來協同工作。
前端的工程化已經發展很成熟了,主要因為前端開發語言的弱類型和各種編程風格的不一致,促使人們急需要一些工程化手段來解決這類問題。相比前端來說,.NET 開發在這方面的需求就沒有那么強烈,因為它的配套 IDE VS 的智能提示解決了大部分問題。但有也一些問題是 IDE 解決不了的,畢竟 IDE 只是給出建議,而不是強制使用規范,而且功能也有限,很難靈活地自定義規范。
但是 .NET 有了 Husky 這種 git hooks 工具后,就對統一編程規范提供了無限可能。今天要介紹的就是一個開源的基于 .NET 實現的 Husky:Husky.Net。
Husky.Net 的 GitHub 地址:
https://github.com/alirezanet/Husky.Net當然,如果不使用 Husky.Net 這個工具,你也可以在 .NET 項目中使用 Husky,只是要安裝 node.js、yarn 等,還要配置 packages.json 文件。使用 Husky.Net 更簡便,而且支持的功能會更多。Husky 支持所有的 git hooks。
當你提交 .NET 項目代碼時,你可以用它來做一些提交前的檢查,比如格式化代碼、運行測試等。下面是 Husky.Net 的一些特點:
由現代化新的 Git 功能(core.hooksPath)提供支持。
用戶友好的信息展示
支持 macOS、Linux 和 Windows
支持 Git GUI
自定義目錄
Staged-hooks! (即將支持)
dotnet-format 集成(即將支持)
Husky.Net 是一個 dotnet CLI 工具,它支持兩種安裝方式,全局安裝和本地安裝(只對項目)。安裝命令如下:
# 全局安裝 dotnet tool install --global Husky# 本地安裝 cd <Your project root directory> dotnet new tool-manifest dotnet tool install Husky安裝完后便可把 husky 安裝到你的 git 項目:
cd <Your project root directory> husky install然后你可以添加一個 commit hook,比如
husky add .husky/pre-commit "Husky is awesome!"這樣,你每次提交代碼都會打印一行消息 Husky is awesome!。
提交代碼測試一下:
git add . git commit -m "Keep calm and commit" # Husky is awesome!目前這個工具還不完善,還有很多功能需要開發,現在發布的是 v0.0.1 版本,后面會陸續增加許多特性。
總結
以上是生活随笔為你收集整理的.NET 也有 Husky 了的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 解读WPF中的Xaml
- 下一篇: .NET6之MiniAPI(四):配置