利用者向けの説明は README.md。ここでは リリース担当者が GitHub 上で版を切るときの手順をまとめます。
VBASSH\My Project\AssemblyInfo.vbのAssemblyVersion/AssemblyFileVersionを更新する。CHANGELOG.mdに日付付きで節を追加する。
scripts\build-release.cmdを実行する(Release ビルドのあとdotnet testまで走る)。- 可能なら
docs\QA-CHECKLIST.mdの手動項目も確認する。
リポジトリの .gitignore で *.zip を除外しているため、ZIP は Git にコミットしません。ローカルで作り、Release に添付します。
VBASSH\bin\Releaseに、README.mdの「Release フォルダに同梱するファイル」に挙げた 各*.dllが揃っていることを確認する。- リポジトリのルートで、次のように 同梱物だけを ZIP にまとめる(例: PowerShell)。
$rel = "VBASSH\bin\Release"
$out = Join-Path (Get-Location) "VbaSSHLibrary-2.2.0-bin.zip"
if (Test-Path $out) { Remove-Item $out }
$items = @(Get-ChildItem "$rel\*.dll" | ForEach-Object { $_.FullName })
$items += (Join-Path (Resolve-Path $rel) "VbaSSHLibrary.xml")
Compress-Archive -LiteralPath $items -DestinationPath $out(リポジトリルートで実行。PowerShell 7 以降では -Path に複数パスを渡すと失敗することがあるため -LiteralPath に配列を渡す。バージョン番号はタグ名に合わせて読み替えてください。)
scripts\compute-release-hashes.cmd表示された SHA256 を Release 本文に貼り付けると、利用者が改ざん検知しやすくなります(README.md の SmartScreen 節も参照)。
git add -A
git commit -m "Release 2.2.0: changelog and docs"
git push origin master
git tag -a v2.2.0 -m "VbaSSHLibrary 2.2.0"
git push origin v2.2.0(タグ名は CHANGELOG.md / アセンブリ版と一致させる。)
事前に gh auth login 済みであること。
gh release create v2.2.0 --title "VbaSSHLibrary 2.2.0" --notes-file RELEASE_NOTES.md VbaSSHLibrary-2.2.0-bin.zipRELEASE_NOTES.md…CHANGELOG.mdの該当版をコピーし、必要なら SHA256 ブロックを追記したファイル(リポジトリに残さず一時ファイルでもよい)。- ZIP を付けない場合は、ファイル引数を省略する。
既に同名タグ/Release がある場合は gh release delete / git tag -d で削除してからやり直すか、パッチ版 v2.2.1 として切り直してください。