# Contributing to Angular Model We would love for you to contribute to starter project and help make it even better than it is today! As a contributor, here are the guidelines we would like you to follow: ## Getting started Please check out one of the getting started guides about GitHub fork / pull requests workflow: - [Forking project](https://guides.github.com/activities/forking/) - [Fork a repo](https://help.github.com/articles/fork-a-repo/) - [Forking](https://gist.github.com/Chaser324/ce0505fbed06b947d962) ## How to sync your fork Your fork of the repo can fall behind as more work is done in the original repository. It is always good idea to update your work before starting to work on new issue. The fork can be updated by navigating to your for directory and running the following command... `git checkout master --force && git fetch upstream && git merge upstream/master && git push` This command assumes you're using unix or unix like environment (macOS, cygwin, WSL, ...). If not you might need to execute commands one by one instead of chaining them with `&&`. ## Commit Message Guidelines 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](https://github.com/angular-extensions/model/blob/master/CHANGELOG.md)**. ### 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**. The **header** is mandatory and the **scope** of the header is optional. ``` ():