Skip to content

Commit

Permalink
Merge pull request #334 from wakatime/feature/readme
Browse files Browse the repository at this point in the history
Improve documentation
  • Loading branch information
gandarez authored May 3, 2021
2 parents d08fd27 + b2719a5 commit 355c89e
Show file tree
Hide file tree
Showing 2 changed files with 62 additions and 3 deletions.
53 changes: 53 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# Contributing

To contribute to this project please carefully read this document.

## Setup

`wakatime-cli` is written in [Go](https://golang.org/).

**Note:** wakatime-cli uses [Go Modules](https://github.com/golang/go/wiki/Modules) to manage dependencies.

Prerequisites:

- `make` - We use make to build and run tests.
- [Go 1.16](https://golang.org/doc/install)

After cloning it first run `make test` to make sure everything is properly set.

## Branches

This project currently has two branches

- `develop` - Default branch for every new `feature` or `fix`
- `master` - Branch for production releases and hotfixes

## Testing and Linting

Before any commit make sure to always run `make lint` and `make test` consecutively. It guarantees there's no linting error and all tests pass.

## Branching Stratgegy

Please follow our guideline for branch names [here](https://github.com/wakatime/semver-action#branch-names). Branches off the pattern won't be accepted.

## Pull Requests

- Big changes, changes to the API, or changes with backward compatibility trade-offs should be first discussed in the Slack.
- Search [existing pull requests](https://github.com/wakatime/wakatime-cli/pulls) to see if one has already been submitted for this change. Search the [issues](https://github.com/wakatime/wakatime-cli/issues?q=is%3Aissue) to see if there has been a discussion on this topic and whether your pull request can close any issues.
- Code formatting should be consistent with the style used in the existing code.
- Don't leave commented out code. A record of this code is already preserved in the commit history.
- All commits must be atomic. This means that the commit completely accomplishes a single task. Each commit should result in fully functional code. Multiple tasks should not be combined in a single commit, but a single task should not be split over multiple commits (e.g. one commit per file modified is not a good practice). For more information see <http://www.freshconsulting.com/atomic-commits>.
- Each pull request should address a single bug fix or feature. This may consist of multiple commits. If you have multiple, unrelated fixes or enhancements to contribute, submit them as separate pull requests.
- Commit messages:
- Use the [imperative mood](http://chris.beams.io/posts/git-commit/#imperative) in the title. For example: "Apply editor.indent preference"
- Capitalize the title.
- Do not end the title with a period.
- Separate title from the body with a blank line. If you're committing via GitHub or GitHub Desktop this will be done automatically.
- Wrap body at 72 characters.
- Completely explain the purpose of the commit. Include a rationale for the change, any caveats, side-effects, etc.
- If your pull request fixes an issue in the issue tracker, use the [closes/fixes/resolves syntax](https://help.github.com/articles/closing-issues-via-commit-messages) in the body to indicate this.
- See <http://chris.beams.io/posts/git-commit> for more tips on writing good commit messages.
- Pull request title and description should follow the same guidelines as commit messages.
- Rebasing pull requests is OK and encouraged. After submitting your pull request some changes may be requested. Rather than adding unnecessary extra commits to the pull request, you can squash these changes into the existing commit and then do a force push to your fork. When you do a force push to your fork, the PR will be updated with your new changes, so there is no need to open a new PR to make changes. Leave a comment on the pull request thread to explain that the history has been changed. This will help to keep the commit history of the repository clean.

Any question join us on [Slack](https://wakaslack.herokuapp.com/).
12 changes: 9 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,15 @@
# wakatime-cli
# Wakatime Cli

Command line interface to [WakaTime](https://wakatime.com) used by all WakaTime [text editor plugins](https://wakatime.com/editors).

Go to <http://wakatime.com/editors> to install the plugin for your text editor or IDE.

## Plugin language support
## Usage

See [./pkg/language/plugins/](./pkg/language/plugins/)
If you are building a plugin using the [WakaTime API](https://wakatime.com/developers/) then follow the [Creating a Plugin](https://wakatime.com/help/misc/creating-plugin) guide.

Some more usage information is available in the [FAQ](https://wakatime.com/faq).

## Contributing

See [Contributing](Contributing.md).

0 comments on commit 355c89e

Please sign in to comment.