Contributions to GeoTV are welcome, thanks for your help! Here are a few guidelines to keep in mind:
To contribute your changes, you'll need to fork the git repository.
-
Fork the GeoTV repository using Github
-
Clone your fork
```shell
git clone https://github.com/my-user-name/geotv.git
```
- Create a new remote for the upstream repository
```shell
cd geotv
git remote add upstream https://github.com/electrickite/geotv.git
```
If you can, please submit a pull request with the fix or improvement. Before working on a feature or bug fix, please search GitHub for an open or closed pull request that relates to your idea. You don't want to duplicate effort.
It is very important to separate new features or improvements into feature branches, and to send a pull request for each branch. This allows each new change to be reviewed individually.
To create a Pull Request:
- If necessary, sync your fork with upstream:
```shell
git fetch upstream
git checkout master
git merge upstream/master
```
- Create a new git branch for your change:
```shell
git checkout -b my-fix-branch master
```
-
Write code, fix bug, implement feature, etc. In short, hack away!
-
Commit your changes using a descriptive commit message. Note: the optional commit
-a
command line option will automatically "add" and "rm" edited files.
```shell
git commit -a
```
- Push your branch to GitHub:
```shell
git push origin my-fix-branch
```
- In GitHub, send a pull request to
geotv:master
.
If we suggest changes to your submission:
- Make the requested updates.
- Commit your changes to your branch (e.g.
my-fix-branch
). - Push the changes to your GitHub fork (this will update your Pull Request).
To keep the commit history clean and help evaluate your PR, try to submit as few commits as possible.
- For a small change or bug fix, submit all changes in a single commit
- For new features, several commits with descriptive messages are fine as long as they help with understanding the contents of the PR
If the PR contains several commits or gets too outdated we may ask you to rebase and force push to update the PR. In this case, use the git interactive rebase command:
git fetch upstream
git checkout my-fix-branch
git rebase master -i
# Squash all but the latest commit. Create a new descriptive commit message
git push origin my-fix-branch -f
Once you push, the Pull Request will auto-update and will only contain your single, squashed commit.
All code must adhere to the MODX Code Standards. In addition, be sure to end all files with a newline.
Language files should follow the default (en) lexicon as closely as possible.