Editing and Publishing Workflow
Introduction to Knapsack's Publishing Workflow
Knapsack leverages the features of Git for managing contribution, versioning, and collaboration in the workspace. In order to publish content from the web, you'll follow the same tried and trusted Git workflows, but from a simplified interface.
Knapsack's contribution features enable all Admins and Contributors to contribute to the design system via the Knapsack UI. Admin users have the option of merging changes into production or committing changes for review by other team members or system administrators. Contributors must first request a review by an Admin before their changes can be published.
Knapsack dynamically generates branches and pull request ("PRs") in the connected git repo as you make, allowing the change set to be entered as a permanent record in the version history timeline of your design system.
In order to publish a change to the Cloud workspace, the PR will need to be merged in the git repo, which can happen via the Knapsack UI or via Git directly.
See below for detailed instructions on each workflow.
- Web-based contribution features are currently supported on workspaces using GitHub, Gitlab, and Bitbucket. If you are interested in this solution but use another repo provider, please reach out to discuss options!
- Users working in a Local environment do not need to use the web publishing or Propose Change workflows, as changes are written immediately to their local files. Local users contribute using standard git operations.
Creating or Selecting a Branch
In order to begin making changes, a Contributor or Admin first needs to create or select a branch. Branches can be created using the Edit button located in the top admin toolbar. Users can also select an existing branch by clicking the branches dropdown (defaulted to "latest").
If creating a new branch, the UI will land the user on the new branch once it has been created.
Request a Review
All Contributors must first request a review from an Admin prior to publishing. Once a Contributor is ready to submit their changes, they can choose to "request a review" using the Request Review button in the top admin toolbar.
Selecting Request Review will create a PR much like choosing Publish Changes, however the PR will not be merged into production.
Changes are automatically committed when you request a review (Contributors) or publish a new version of your design system (Admins). However, you can still choose to commit changes separately using the Commit Changes button in the drop down menu.
Once you're ready for changes to go live, an Admin must publish them to the latest version of your design system. Admins can publish changes using the Publish Changes button in the top admin toolbar (this automatically commits your changes as well). Clicking Publish Changes creates and merges a PR in the connected Git repo.
- Once the publishing workflow is complete, changes may take 5-10 minutes to propagate on the live site while the deployment completes.