MiniScaffold 0.37.1
dotnet new install MiniScaffold::0.37.1
此代码包包含一个.NET 模板代码包,您可以在shell/命令行中调用。
MiniScaffold
什么是 MiniScaffold?
这是一个为创建和发布F# 模板的
为什么使用 MiniScaffold?
这可以消除开发者创建开源项目时面临的歧义。如:
- 如何组织我的项目结构?
- 如何创建可重复的构建过程?
- 我应该使用哪个测试框架?
- 如何轻松创建发布版本?
- 应该使用哪些 Issue/Pull Request 模板?
- 应该如何创建文档?
- 如何轻松设置 CI/CD?
- 标准的 .gitignore 文件是什么?
- 还有什么其他事情可以使我在开始一个新的项目时更加容易(即使我对这些事不太了解)?
这包含哪些内容?
所有项目类型
- 标准项目结构 用于您的 dotnet 应用程序
- 构建自动化 工具通过 FAKE
- 包管理工具 通过 Paket
- 单元测试 通过 Expecto
- 代码覆盖率 通过 Altcover
- 此外还通过 ReportGenerator 生成一个 HTML 报告
- 代码格式化 通过 Fantomas
GitRelease
构建步骤会将最新的 CHANGELOG.md 提交到仓库体中,并创建一个 git tag。GitHubRelease
构建步骤将通过 GitHub 发布 来自 CHANGELOG.md 的信息,并添加任何整理好的资源(如 nuget/zip/targz 等)。- 通过 持续集成 使用 GitHub Actions
针对 库
- 为
net6.0
编译 - 目标框架- 为了为
net6.0
编译,需要安装 .NET 6.0
- 为了为
- Sourcelink,通过将源控制元数据添加到构建资产,为您用户提供出色的源调试体验
- 生成文档 - 从 markdown 文件、fsx 文件以及库中的 XML 文档注释 生成文档。
- 通过 持续部署 使用 GitHub Actions
- [发布到 NuGet] - 将 NuGet 打包推送到 NuGet
- [发布文档] - 将文档发布到 GitHub Pages
针对 应用程序
- 通过 Argu 进行基本参数解析示例
- 为
net6.0
编译应用程序 - 目标框架- 为了为
net6.0
编译- 需安装 .NET 6.0
- 为了为
- 为
win-x64
、osx-x64
和linux-x64
编译 - 运行时标识符。通过 dotnet-packaging 打包应用程序- 将
win-x64
应用程序打包到 .zip 文件中。 - 将
osx-x64
应用程序打包到 .tar.gz 文件中。 - 将
linux-x64
应用程序打包到 .tar.gz 文件中。
- 将
快速入门
从 NuGet 安装 dotnet 模板
dotnet new install "MiniScaffold::*"
然后选择
dotnet new mini-scaffold -n MyCoolNewLib --githubUsername MyGithubUsername
dotnet new mini-scaffold -n MyCoolNewApp --githubUsername MyGithubUsername -ou console
脚手架默认使用 main
分支进行发布。如果您要从不同的分支发布,可以使用 --releaseBranch <branch name>
参数使用您的发布分支而不是默认分支。
构建
GitHub Actions |
---|
NuGet
稳定版本 | 预发布版本 |
---|---|
选项
githubUserName
用于在 NuGet 包中自动配置作者信息,并配置 repo 位置的推送 URL。
outputType
默认为库
设置为 Console 或库项目时,将设置与其类型相关的支持基础设施。
已知问题
权限被拒绝
-bash: ./build.sh: Permission denied
这是因为 dotnet 模板丢失了文件的权限。( https://github.com/TheAngryByrd/MiniScaffold/pull/37 ) 添加了一个后置钩子来解决此问题,但这仅适用于 dotnet sdك 2.x 用户。dotnet sdك 1.x 需要运行 chmod +x ./build.sh
Appveyor 徽章没有正确生成
Appveyor根据项目名称生成URL的约定有一些细微差别。有关详细信息,请参阅此问题。
使用此模板的示例项目
- Chessie.Hopac
- Marten.FSharp
- FSharp.Control.WebSockets
- FSharp.Control.Redis.Streams
- FsLibLog
- Giraffe.HotReload
- EFCore.FSharp
此项目使用以下项目
-
.NETStandard 0.0
- 无依赖
NuGet 包
此包不由任何NuGet包使用。
GitHub 仓库
此包不由任何流行的GitHub仓库使用。
版本 | 下载 | 最后更新 |
---|---|---|
0.37.1 | 3,485 | 11/19/2023 |
0.37.0 | 823 | 10/25/2023 |
0.36.2 | 250 | 10/22/2023 |
0.36.1 | 183 | 10/21/2023 |
0.36.0 | 691 | 10/6/2023 |
0.35.2 | 219 | 9/18/2023 |
0.35.0 | 156 | 9/18/2023 |
0.34.2 | 206 | 9/14/2023 |
0.34.1 | 149 | 9/5/2023 |
0.34.0 | 376 | 6/9/2023 |
0.33.0 | 134 | 6/7/2023 |
0.33.0-alpha009 | 154 | 6/7/2023 |
0.33.0-alpha008 | 128 | 6/7/2023 |
0.33.0-alpha007 | 154 | 6/7/2023 |
0.33.0-alpha006 | 171 | 6/7/2023 |
0.33.0-alpha005 | 160 | 6/7/2023 |
0.33.0-alpha004 | 127 | 6/7/2023 |
0.32.0 | 948 | 9/17/2022 |
0.32.0-beta001 | 194 | 9/17/2022 |
0.31.1 | 614 | 4/29/2022 |
0.31.1-beta001 | 187 | 4/29/2022 |
0.31.0 | 523 | 2/6/2022 |
0.31.0-beta001 | 222 | 2/6/2022 |
0.30.0 | 483 | 1/18/2022 |
0.30.0-beta001 | 156 | 1/18/2022 |
0.29.1 | 464 | 10/11/2021 |
0.29.1-beta001 | 213 | 10/11/2021 |
0.29.0 | 372 | 9/29/2021 |
0.29.0-beta001 | 193 | 9/29/2021 |
0.28.0 | 2,445 | 6/3/2021 |
0.27.0 | 373 | 5/28/2021 |
0.27.0-beta002 | 221 | 5/28/2021 |
0.27.0-beta001 | 187 | 5/28/2021 |
0.26.4 | 397 | 5/25/2021 |
0.26.4-beta001 | 232 | 5/25/2021 |
0.26.3 | 554 | 3/14/2021 |
0.26.3-beta001 | 280 | 3/14/2021 |
0.26.2 | 528 | 1/22/2021 |
0.26.1 | 439 | 1/19/2021 |
0.26.1-beta001 | 241 | 1/19/2021 |
0.26.0 | 447 | 1/5/2021 |
0.26.0-beta001 | 223 | 1/5/2021 |
0.25.1 | 525 | 11/11/2020 |
0.25.0 | 769 | 7/25/2020 |
0.25.0-beta001 | 337 | 7/25/2020 |
0.24.4 | 625 | 5/9/2020 |
0.24.3 | 573 | 5/9/2020 |
0.24.2 | 589 | 5/1/2020 |
0.24.1 | 534 | 4/23/2020 |
0.24.0 | 558 | 3/26/2020 |
0.23.5 | 550 | 3/24/2020 |
0.23.4 | 560 | 3/8/2020 |
0.23.3 | 586 | 2/24/2020 |
0.23.2 | 530 | 2/24/2020 |
0.23.1 | 542 | 2/24/2020 |
0.23.0 | 571 | 2/13/2020 |
0.23.0-beta001 | 383 | 2/7/2020 |
0.22.4 | 674 | 1/23/2020 |
0.22.3 | 587 | 1/15/2020 |
0.22.2 | 597 | 1/3/2020 |
0.22.1 | 614 | 12/26/2019 |
0.22.0 | 618 | 12/26/2019 |
0.22.0-beta001 | 430 | 12/26/2019 |
0.21.5 | 587 | 12/24/2019 |
0.21.4-beta001 | 414 | 12/24/2019 |
0.21.3 | 579 | 12/21/2019 |
0.21.2 | 586 | 12/21/2019 |
0.21.1 | 587 | 12/16/2019 |
0.21.0 | 571 | 12/13/2019 |
0.20.2 | 598 | 12/13/2019 |
0.20.1 | 587 | 11/26/2019 |
0.20.0 | 593 | 10/22/2019 |
0.19.2 | 572 | 10/22/2019 |
0.19.1 | 574 | 10/21/2019 |
0.19.0 | 600 | 9/24/2019 |
0.18.0 | 590 | 9/20/2019 |
0.17.1 | 815 | 6/4/2019 |
0.16.4 | 700 | 5/20/2019 |
0.16.3 | 642 | 5/17/2019 |
0.16.2 | 642 | 5/17/2019 |
0.16.1 | 625 | 5/9/2019 |
0.16.0 | 663 | 5/8/2019 |
0.15.1 | 774 | 5/3/2019 |
0.15.0 | 739 | 5/2/2019 |
0.14.2 | 712 | 5/2/2019 |
0.14.2-beta002 | 530 | 5/2/2019 |
0.14.2-beta001 | 534 | 5/2/2019 |
0.14.1 | 722 | 4/9/2019 |
0.14.0 | 880 | 2/19/2019 |
0.14.0-beta001 | 547 | 2/18/2019 |
0.13.0 | 885 | 1/9/2019 |
0.12.1 | 745 | 1/9/2019 |
0.12.0 | 1,072 | 9/11/2018 |
0.11.0 | 819 | 8/30/2018 |
0.11.0-beta002 | 585 | 8/30/2018 |
0.11.0-beta001 | 590 | 8/30/2018 |
0.10.0 | 907 | 8/18/2018 |
0.9.7 | 894 | 8/18/2018 |
0.9.6 | 870 | 8/10/2018 |
0.9.5 | 1,039 | 7/9/2018 |
0.9.4 | 1,072 | 6/22/2018 |
0.9.3 | 1,144 | 6/1/2018 |
0.9.2 | 1,064 | 6/1/2018 |
0.9.1 | 1,119 | 5/15/2018 |
0.9.0 | 1,094 | 5/14/2018 |
0.8.1 | 1,126 | 4/9/2018 |
0.8.0 | 1,177 | 3/20/2018 |
0.8.0-alpha002 | 819 | 3/20/2018 |
0.8.0-alpha001 | 880 | 3/20/2018 |
0.7.1 | 1,099 | 3/20/2018 |
0.7.0 | 1,098 | 3/16/2018 |
0.6.1 | 1,086 | 3/11/2018 |
0.6.0 | 1,084 | 3/7/2018 |
0.6.0-beta001 | 850 | 3/6/2018 |
0.5.2 | 1,105 | 3/1/2018 |
0.5.2-beta001 | 851 | 2/25/2018 |
0.5.1 | 1,087 | 2/25/2018 |
0.5.1-beta001 | 842 | 2/25/2018 |
0.5.0 | 1,167 | 2/15/2018 |
0.5.0-beta004 | 844 | 2/12/2018 |
0.5.0-beta003 | 853 | 2/12/2018 |
0.5.0-beta002 | 867 | 2/12/2018 |
0.5.0-beta001 | 846 | 2/10/2018 |
0.4.1 | 1,142 | 2/10/2018 |
0.4.1-beta003 | 863 | 2/10/2018 |
0.4.1-beta002 | 1,116 | 2/9/2018 |
0.4.1-beta001 | 864 | 2/9/2018 |
0.4.0 | 1,121 | 1/13/2018 |
0.3.5 | 1,490 | 7/18/2017 |
0.3.4 | 1,083 | 7/3/2017 |
0.3.3 | 1,115 | 6/26/2017 |
0.3.2 | 1,132 | 5/7/2017 |
0.3.2-alpha001 | 874 | 5/2/2017 |
0.3.1 | 1,060 | 4/30/2017 |
0.3.0 | 1,062 | 4/30/2017 |
0.3.0-alpha001 | 807 | 4/30/2017 |
0.2.0 | 1,161 | 4/18/2017 |
0.2.0-alpha001 | 817 | 4/18/2017 |
0.1.0 | 1,109 | 4/14/2017 |
0.1.0-alpha008 | 798 | 4/14/2017 |
0.1.0-alpha007 | 790 | 4/14/2017 |
0.1.0-alpha006 | 786 | 4/14/2017 |
0.1.0-alpha005 | 830 | 4/14/2017 |
0.1.0-alpha004 | 804 | 4/14/2017 |
0.1.0-alpha003 | 813 | 4/14/2017 |
0.1.0-alpha002 | 843 | 4/14/2017 |
0.1.0-alpha001 | 848 | 4/14/2017 |
## [0.37.1] - 2023-11-19
[0.37.1]: https://github.com/TheAngryByrd/MiniScaffold//compare/v0.37.0...v0.37.1
### 修复
- [使用GitHub环境进行Nuget发布](https://github.com/TheAngryByrd/MiniScaffold/pull/285),由@PolinaSavelyeva提供