在HelpNDoc构建之前,如何清空GitHub Wiki的输出目录?

前端开发 2026-07-08

HelpNDoc有一个在构建前清空文件夹的设置:

模板设置

使用这个选项在构建像CHM或 HTML等帮助格式时没有问题,但在为GitHub wiki构建时不能使用此设置,因为它会在此过程中删除仓库中的数据文件。

是否有其他方法在构建期间自动保持输出文件夹的整洁,从而删除旧的主题或图片等?

解决方案

你可以通过HelpNDoc的 Build Actions 功能来解决这个问题:

  1. 添加一个 Pre-build action

  2. 给它起一个名称/描述。例如:

    • 运行PowerShell清理脚本
    • 在生成新文件之前删除旧的wiki输出。
  3. File path 设置为:C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
  4. Arguments 设置为:-ExecutionPolicy Bypass -File "..\..\Scripts\ProcessOutput.ps1" "."

下面是我的构建动作设置截图:

build action settings 2.打开文件资源管理器,定位到包含HND文件的文件夹,并创建一个名为 Scripts 的子文件夹。 3.将这个PowerShell ProcessOutput.ps1 脚本放到该文件夹中:

```bash param( [string]$OutputFolder )

Write-Host "Cleaning output folder: $OutputFolder"

# 1. Delete the lib folder if it exists $libPath = Join-Path $OutputFolder "lib" if (Test-Path $libPath) { Write-Host "Deleting lib folder..." Remove-Item -Path $libPath -Recurse -Force }

# 2. Delete all .md files except Sidebar.md Get-ChildItem -Path $OutputFolder -Filter "*.md" -File | Where-Object { $.Name -ne "Sidebar.md" } | ForEach-Object { Write-Host "Deleting $($.Name)" Remove-Item $_.FullName -Force } ```

我在自己的场景中已经停止使用HelpNDoc自动构建的 _sidebar.md,这样我就可以拥有更丰富的侧边栏。因此我的脚本不会删除那个文件。但除此之外,它会删除所有 md 文件和 lib 文件夹。

你可能需要根据需要调整路径等,并相应调整脚本的行为。

在构建期间你应该看到:

sample build log

站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。

相关文章