Add CONTRIBUTING template
This commit is contained in:
parent
7ad2bfc721
commit
5de8e31499
1 changed files with 76 additions and 0 deletions
76
CONTRIBUTING.md
Normal file
76
CONTRIBUTING.md
Normal file
|
|
@ -0,0 +1,76 @@
|
||||||
|
# Contributing to vmware-go-kcl-v2
|
||||||
|
|
||||||
|
The vmware-go-kcl-v2 project team welcomes contributions from the community. Before you start working with vmware-go-kcl-v2, please
|
||||||
|
read our [Developer Certificate of Origin](https://cla.vmware.com/dco). All contributions to this repository must be
|
||||||
|
signed as described on that page. Your signature certifies that you wrote the patch or have the right to pass it on
|
||||||
|
as an open-source patch.
|
||||||
|
|
||||||
|
## Contribution Flow
|
||||||
|
|
||||||
|
This is a rough outline of what a contributor's workflow looks like:
|
||||||
|
|
||||||
|
- Create a topic branch from where you want to base your work
|
||||||
|
- Make commits of logical units
|
||||||
|
- Make sure your commit messages are in the proper format (see below)
|
||||||
|
- Push your changes to a topic branch in your fork of the repository
|
||||||
|
- Submit a pull request
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
``` shell
|
||||||
|
git remote add upstream https://github.com/vmware/@(project).git
|
||||||
|
git checkout -b my-new-feature main
|
||||||
|
git commit -a
|
||||||
|
git push origin my-new-feature
|
||||||
|
```
|
||||||
|
|
||||||
|
### Staying In Sync With Upstream
|
||||||
|
|
||||||
|
When your branch gets out of sync with the vmware/main branch, use the following to update:
|
||||||
|
|
||||||
|
``` shell
|
||||||
|
git checkout my-new-feature
|
||||||
|
git fetch -a
|
||||||
|
git pull --rebase upstream main
|
||||||
|
git push --force-with-lease origin my-new-feature
|
||||||
|
```
|
||||||
|
|
||||||
|
### Updating pull requests
|
||||||
|
|
||||||
|
If your PR fails to pass CI or needs changes based on code review, you'll most likely want to squash these changes into
|
||||||
|
existing commits.
|
||||||
|
|
||||||
|
If your pull request contains a single commit or your changes are related to the most recent commit, you can simply
|
||||||
|
amend the commit.
|
||||||
|
|
||||||
|
``` shell
|
||||||
|
git add .
|
||||||
|
git commit --amend
|
||||||
|
git push --force-with-lease origin my-new-feature
|
||||||
|
```
|
||||||
|
|
||||||
|
If you need to squash changes into an earlier commit, you can use:
|
||||||
|
|
||||||
|
``` shell
|
||||||
|
git add .
|
||||||
|
git commit --fixup <commit>
|
||||||
|
git rebase -i --autosquash main
|
||||||
|
git push --force-with-lease origin my-new-feature
|
||||||
|
```
|
||||||
|
|
||||||
|
Be sure to add a comment to the PR indicating your new changes are ready to review, as GitHub does not generate a
|
||||||
|
notification when you git push.
|
||||||
|
|
||||||
|
### Code Style
|
||||||
|
|
||||||
|
### Formatting Commit Messages
|
||||||
|
|
||||||
|
We follow the conventions on [How to Write a Git Commit Message](http://chris.beams.io/posts/git-commit/).
|
||||||
|
|
||||||
|
Be sure to include any related GitHub issue references in the commit message. See
|
||||||
|
[GFM syntax](https://guides.github.com/features/mastering-markdown/#GitHub-flavored-markdown) for referencing issues
|
||||||
|
and commits.
|
||||||
|
|
||||||
|
## Reporting Bugs and Creating Issues
|
||||||
|
|
||||||
|
When opening a new issue, try to roughly follow the commit message format conventions above.
|
||||||
Loading…
Reference in a new issue