-
-
Notifications
You must be signed in to change notification settings - Fork 932
Build a new release
Wojciech Nagórski edited this page Nov 16, 2023
·
19 revisions
Ensure the following software is installed:
For SSH.NET we're always building our releases from the master branch, hence the following steps need to be taken to prepare this branch:
- Ensure any commits, that are part of the scope of the release, are merged from the develop branch to the master branch.
- Switch to the master branch.
- Make sure you have no local changes.
- Pull any changes from remote.
- Update the following custom attributes in src/Renci.SshNet/Properties/CommonAssemblyInfo.cs:
- AssemblyCopyright
- AssemblyVersion
- AssemblyFileVersion
- AssemblyInformationalVersion
- Commit and push changes to master branch.
- Switch to master branch on your host machine.
- Make sure you have no local changes.
- Pull any changes from remote.
- Start a Developer Command Prompt for VS2019.
- Navigate to the Build folder of the SSH.NET checkout directory.
- Execute the following command:
msbuild /p:ReleaseVersion=<version> /t:CleanModern /t:PreparePackageModern
Execute the following steps on your host machine:
-
Start a Developer Command Prompt for VS2019.
-
Navigate to the Build folder of the SSH.NET checkout directory.
-
Set the SHFBROOT environment variable to the Sandcastle Help File Builder installation directory.
For example:
set SHFBROOT=C:\Program Files (x86)\EWSoftware\Sandcastle Help File Builder
- Execute the following command:
msbuild /p:ReleaseVersion=<version> /t:Package
- Create a tag named after the version you're releasing.
For example:
git tag -a "2020.0.0-beta1" -m "Release 2020.0.0 beta 1"
- Push your changes (including tags).
For example:
git push origin "2020.0.0-beta1"
- Update the release on GitHub with:
- The newly created tag on master.
- The binary distribution package.
- The compiled HTML Help file
- Publish the GitHub release.
- Publish the NuGet package.