diff --git a/docs/courses-vscode-extension.md b/docs/courses-vscode-extension.md index bd4226a830f..3d0f3150486 100644 --- a/docs/courses-vscode-extension.md +++ b/docs/courses-vscode-extension.md @@ -4,41 +4,33 @@ This details the maintenance guidelines for the [freeCodeCamp/courses-vscode-ext ## Publishing the Extension -A GitHub Action automagically publishes the extension to the Visual Studio Marketplace, on pushes to the `prod` branch. +A GitHub Action automagically publishes the extension to the Visual Studio Marketplace, on the release of a new GitHub Release. -Ensure the `main` branch is checked out. +1. Package a new version of the extension: ```bash -git checkout main +npm run pack -- ``` -Update the local repository with `upstream`, and reset `main`. +Where `` is one of: `major`, `minor`, `patch`. + +2. Push the new version to `main`: ```bash -git fetch upstream -git reset --hard upstream/main +git commit -am "(): " +git push ``` -Checkout the `prod` branch. +Optionally, you can push directly to `upstream/main`, but opening a new PR is recommended for a sanity check. -```bash -git checkout prod -``` +3. Create a new GitHub Release using the GitHub UI: -Merge the commits wanted for deployment into `prod`. - -```bash -git merge main -``` - -Push the local branch to `upstream`. - -```bash -git push upstream -``` +- Correctly increment the version number, when creating a new tag. +- Upload the `.vsix` file with the release. +- Publish the release, and confirm the action succeeded. > [!NOTE] -> Pushing to `upstream` requires write access to the `freeCodeCamp/courses-vscode-extension` repository. +> Creating a release requires write access to the `freeCodeCamp/courses-vscode-extension` repository. ## Manually Publishing the Extension