Skip to content

Latest commit

 

History

History
63 lines (54 loc) · 3.14 KB

CONTRIBUTING.md

File metadata and controls

63 lines (54 loc) · 3.14 KB

Contributing

New Contributors are always welcome.

Note that Contributors are required to be covered by an Eclipse Contributor Agreement. Contributors are encouraged, but not required, to be a member of the OpenHW Group.

The Mechanics

  1. From GitHub: fork the cva6 repository
  2. Clone repository: git clone https://github.com/[your_github_username]/cva6
  3. Create your feature branch: git checkout -b <my_branch>.
    Please uniquify your branch name. See the Git Cheats for a useful nomenclature.
  4. Make your edits...
  5. Commit your changes: git commit -m 'Add some feature'
  6. Push feature branch: git push origin <my_branch>
  7. From GitHub: submit a pull request

Coding Style

For RTL coding, the OpenHW Group has adopted the lowRISC Style Guides.

Git Considerations

  • Do not push to master, if you want to add a feature do it in your branch.
  • Separate subject from body with a blank line.
  • Limit the subject line to 50 characters.
  • Capitalize the subject line.
  • Do not end the subject line with a period.
  • Use the imperative mood in the subject line.
  • Use the present tense ("Add feature" not "Added feature").
  • Wrap the body at 72 characters.
  • Use the body to explain what and why vs. how.
  • Consider starting the commit message with an applicable emoji:
    • :sparkles: When introducing a new feature
    • 🎨 :art: Improving the format/structure of the code
    • :zap: When improving performance
    • 🔥 :fire Removing code or files.
    • 📝 :memo: When writing docs
    • 🐛 :bug: When fixing a bug
    • 🔥 :fire: When removing code or files
    • 🗑️ :wastebasket: When removing code or files
    • 💚 :green_heart: When fixing the CI build
    • 👷 :construction_worker: Adding CI build system
    • :white_check_mark: When adding tests
    • 🔒 :lock: When dealing with security
    • ⬆️ :arrow_up: When upgrading dependencies
    • ⬇️ :arrow_down: When downgrading dependencies
    • 🚨 :rotating_light: When removing linter warnings
    • ✏️ pencil2: Fixing typos
    • ♻️ :scisccor: Refactoring code.
    • 💥 :boom: Introducing breaking changes
    • 🚚 truck Moving or renaming files.
    • 👾 :space_invader: When fixing something synthesis related
    • 🍻 :beer: Writing code drunkenly.
    • 👌 :ok_hand Updating code due to code review changes
    • 🏗️ :building_construction: Making architectural changes.

For a detailed why and how please refer to one of the multiple resources regarding git commit messages.

If you use vi for your commit message, consider to put the following snippet inside your ~/.vimrc:

autocmd Filetype gitcommit setlocal spell textwidth=72s