1f8ddb8a52 content: clarify resources front matter key descriptions e064ab8528 content: Add deprecation badges to module config page 727ca5563a github: Add push trigger to lint workflow 64dd5c9886 content: Fix typo c5bc6b6515 github: Fix lint workflow faec0c3a0a github: Combine linting actions into a single workflow 06112aeaf2 theme: Miscellaneous template edits 75d4902270 theme: Format templates with gotmplfmt fec2e2a67e content: Document that the language code in a file name must be lowercase 9dbd841ba6 content: Document the src attribute in the Page Resources metadata reference fd3ffef985 content: Fix "build from source" instructions for Windows af4c9cd4d7 content: Miscellaneous edits 408d8b2f0a content: Miscellaneous edits e8804afe6e content: Fix typo d98276be30 content: Updates for v0.161.0 01b1f8fa12 content: Note merge limitation for slice configuration values d2b18f0c8d content: Document page matcher usage for cascading values 45e5bd9ab3 content: Update Cloudflare Worker host/deploy guide b83726b89a content: Document fallback rendering for fenced code blocks 8f1eeb42bc content: Update reference for source code shortcode e8da56303b content: Add gotmplfmt to list of VS Code extensions 950fabbfd6 content: Update FAQ on feature availability error 6411146d24 content: Update quick start guide 38cc39fd51 content: Add Hugo Shortcodes to list of VS Code extensions 72d98b107b content: Misc updates to get validators to pass 9fb0e1ca35 Add a paragraph about sec boundaries e6abf5644f content: Improve syntax highlighting documentation c06193bd1a content: Update go-i18n package reference ce58fef945 Hugo 0.161.1 c7e0f63385 content: Fix package references 7f15fb3bf9 data: Regen docshelper 7483d53b55 Update HUGO_VERSION to 0.161.0 c4abcdb45f security: Add a bullet point about "pragmatic defaults" 3cd7492862 content: Improve explanation of mount removal in module configurations 4099f07bb9 content: Update GitHub Pages workflow example a6c9853a58 content: Fix typo e6f79a938b Update netlify.toml abda3d6659 content: Update Action versions in GitHub Pages workflow example 55dd288fa9 content: Add GitCMS to front-ends tools list 21081f6d49 content: Remove outdated new-in badges b2ec263884 content: Update version references 825e0b8ea9 One more CSS var adjustment 85f95a899b Adjust css.Build var docs a little df48288002 content: Updates for v0.160.0 a82a9b9797 Update HUGO_VERSION to 0.160.0 1155747dc4 content: Improve CSS processing feature description f6ce893974 content: Add css.Build to features 67b8ed1198 content: Fix typos 0f62a67863 content: Fix typo dbb42aed4a content: Document the deploy edition 549f30f933 content: De-emphasize references to the extended edition 8f5c9782d4 content: Add Pages CMS to front-ends documentation b2bfc3af48 Update HUGO_VERSION to 0.159.2 3793156fc5 content: Fix typos bacd4824ef content: Specify function namespace in example 7f2dc0d40a Regen docs.yml 65a851f731 Update HUGO_VERSION to 0.159.1 ce05fe3fc0 content: Adjust variable references in build script examples 8a04f9fe64 content: Improve hosting build script examples 67962ce05c content: Link to Codeberg Pages 404 handling fd248f57ed content: Identify esbuild as the foundation for build functions 62f02879fd content: Remove outdated content 553c407f9e content: Miscellaneous corrections 77e2cad088 content: Add new-in badge for usePackageJSON 0746e1e621 Add a page on using npm dependencies in Hugo Modules 8824850f5c Update HUGO_VERSION to 0.159.0 git-subtree-dir: docs git-subtree-split: 1f8ddb8a5230518f07c50b4b03cba3cae21081c4
4.3 KiB
title, description, categories, keywords
| title | description | categories | keywords |
|---|---|---|---|
| Development | Contribute to the development of Hugo. |
Introduction
You can contribute to the Hugo project by:
- Answering questions on the forum
- Improving the documentation
- Monitoring the issue queue
- Creating or improving themes
- Squashing bugs
Please submit documentation issues and pull requests to the documentation repository.
If you have an idea for an enhancement or new feature, create a new topic on the forum in the "Feature" category. This will help you to:
- Determine if the capability already exists
- Measure interest
- Refine the concept
If there is sufficient interest, create a proposal. Do not submit a pull request until the project lead accepts the proposal.
For a complete guide to contributing to Hugo, see the Contribution Guide.
Prerequisites
To build Hugo from source you must install:
GitHub workflow
Note
This section assumes that you have a working knowledge of Go, Git and GitHub, and are comfortable working on the command line.
Use this workflow to create and submit pull requests.
- Step 1
- Fork the project repository.
- Step 2
- Clone your fork.
- Step 3
- Create a new branch with a descriptive name that includes the corresponding issue number.
For a new feature:
git checkout -b feat/implement-some-feature-99999For a bug fix:
git checkout -b fix/fix-some-bug-99999 - Step 4
- Make changes.
- Step 5
- Build and install.
To build and install the standard edition:
CGO_ENABLED=0 go install{{< new-in v0.159.2 />}} To build and install the deploy edition:
CGO_ENABLED=0 go install -tags withdeployTo build and install the extended edition, first install a C compiler such as GCC or Clang and then run the following command:
CGO_ENABLED=1 go install -tags extendedTo build and install the extended/deploy edition, first install a C compiler such as GCC or Clang and then run the following command:
CGO_ENABLED=1 go install -tags extended,withdeploy - Step 6
- Test your changes:
go test ./... - Step 7
- Commit your changes with a descriptive commit message:
- Provide a summary on the first line, typically 50 characters or less, followed by a blank line.
- Begin the summary with the name of the package, followed by a colon, a space, and a brief description of the change beginning with a capital letter
- Use imperative present tense
- See the commit message guidelines for requirements
- Optionally, provide a detailed description where each line is 72 characters or less, followed by a blank line.
- Add one or more "Fixes" or "Closes" keywords, each on its own line, referencing the issues addressed by this change.
For example:
git commit -m "tpl/strings: Create wrap function The strings.Wrap function wraps a string into one or more lines, splitting the string after the given number of characters, but not splitting in the middle of a word. Fixes #99998 Closes #99999" - Provide a summary on the first line, typically 50 characters or less, followed by a blank line.
- Step 8
- Push the new branch to your fork of the documentation repository.
- Step 9
- Visit the project repository and create a pull request (PR).
- Step 10
- A project maintainer will review your PR and may request changes. You may delete your branch after the maintainer merges your PR.