# Contributing to Valico You want to contribute? You're awesome! When submitting a Pull Request, please have your commits follow these guidelines: ## Getting source When cloning, ensure to clone recursively to get the submodules. git clone --recurse-submodules git@github.com:rustless/valico.git If you've already cloned normally, use this to get the submodules: git submodule update --init --recursive ## Git Commit Guidelines These guidelines have been copied from the [AngularJS](https://github.com/angular/angular.js/blob/master/CONTRIBUTING.md#-git-commit-guidelines) project. We have very precise rules over how our git commit messages can be formatted. This leads to **more readable messages** that are easy to follow when looking through the **project history**. But also, we use the git commit messages to **generate the change log**. ### Commit Message Format Each commit message consists of a **header**, a **body** and a **footer**. The header has a special format that includes a **type**, a **scope** and a **subject**: `` ():