Difference between revisions of "Contributing"

From PaparazziUAV
Jump to navigation Jump to search
 
(14 intermediate revisions by 4 users not shown)
Line 1: Line 1:
== How to contribute ==
== How to contribute ==
There are lots of ways to contribute to Paparazzi and get involved. Contributions in the form of elaborating on and expanding documentation, wiki pages, tutorials and code fixes are always welcome and encouraged.


It would be fantastic if you add you share to enhance the Paparazzi project. Help is always very welcome for aspects of the project. May this be documentation, wiki, maintenance, electronics or code contributions and fixes. There are lots of ways to contribute to Paparazzi and get involved.  
This page will give you a head start on how you can contribute.


This page will give you a headstart to be able to contribute.
=== Wiki ===
 
If you don't have a Wiki account yet join the [https://gitter.im/paparazzi/discuss Gitter channel] (there is an open chat button in the right lower corner of the page too) and ask and we will Create an account for you. We had to disable normal account creation due to spam attacks.
 
You can then immediately start adding information, cleaning up, or fixing typos. It is a tremendous contribution to the quality of the PaparazziUAV documentation when you do this! Just Do It:


=== Wiki ===
[[Image:Just_Do_It.gif|400px]]


Just create an account and you can start adding information, cleaning it up or just fixing some typo you just noticed :-)
You do not need a lot of deep technical knowledge to be helpful. If you read something and it is not clear to you, ask for an explanation in the Gitter Chat and then do not forget to add that information to the Wiki.


Some information and links on how to edit the wiki can be found at [[Help:Editing]].
Some information and links on how to edit the wiki can be found at [[Help:Editing|Help with Editing]].


Please be aware of past edits and page histories. Try not to remove this; if you are moving/renaming a page, use the '''move''' tab at the top of a page. This ensures the revision history is moved with the page.
Please be aware of past edits and page histories. Try not to remove this; if you are moving/renaming a page, use the '''move''' tab at the top of a page. This ensures the revision history is moved with the page.
Line 25: Line 30:
Here is the short version if you already know git:
Here is the short version if you already know git:
# Create an account on [http://github.com/ github].
# Create an account on [http://github.com/ github].
# Fork the [http://github.com/paparazzi/paparazzi/ papaprazzi repo] on github. (After logging in press the '''fork''' button).
# Fork the [http://github.com/paparazzi/paparazzi/ paparazzi repository] on github. (After logging in press the '''fork''' button).
# If you want to clone with SSH: '''git clone git@github.com:<yourname>/paparazzi.git'''<br/>Or with HTTPS: '''git clone <nowiki>https://github.com/<yourname>/paparazzi.git</nowiki>'''<br/>[https://help.github.com/articles/which-remote-url-should-i-use Which remote URL should I use?]
# If you want to clone with SSH: '''git clone git@github.com:<yourname>/paparazzi.git'''<br/>Or with HTTPS: '''git clone <nowiki>https://github.com/<yourname>/paparazzi.git</nowiki>'''<br/>[https://help.github.com/articles/which-remote-url-should-i-use Which remote URL should I use?]
# '''git remote add upstream <nowiki>https://github.com/paparazzi/paparazzi.git</nowiki>'''
# '''git remote add upstream <nowiki>https://github.com/paparazzi/paparazzi.git</nowiki>'''
Line 32: Line 37:
# fix/code and commit in logical units (with a [http://bit.ly/goodcommitmessages good commit message])
# fix/code and commit in logical units (with a [http://bit.ly/goodcommitmessages good commit message])
# push your feature/bugfix branch
# push your feature/bugfix branch
# Send us a [http://help.github.com/pull-requests/ pull request] on github. (Or send patches to the mailing list).
# Send us a [https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests pull request] on github. (Or send patches to the mailing list).


=== Defects and Features ===
=== Defects and Features ===
To report Paparazzi defect, various issues and to submit a feature request use the simple [https://github.com/paparazzi/paparazzi/issues issue tracker on github].
To report a Paparazzi defect or issue. Submit a feature request using the simple [https://github.com/paparazzi/paparazzi/issues issue tracker on github].


=== Continuous Integration Builds ===
=== Continuous Integration Builds ===
There are [[Builds|build servers] running some [[Builds/Tests|Continuous Integration tests]].
There are [[Builds|build servers]] running some [[Builds/Tests|Continuous Integration tests]].


[[Category:Developer_Documentation]]
[[Category:Developer_Documentation]]

Latest revision as of 00:26, 1 August 2020

How to contribute

There are lots of ways to contribute to Paparazzi and get involved. Contributions in the form of elaborating on and expanding documentation, wiki pages, tutorials and code fixes are always welcome and encouraged.

This page will give you a head start on how you can contribute.

Wiki

If you don't have a Wiki account yet join the Gitter channel (there is an open chat button in the right lower corner of the page too) and ask and we will Create an account for you. We had to disable normal account creation due to spam attacks.

You can then immediately start adding information, cleaning up, or fixing typos. It is a tremendous contribution to the quality of the PaparazziUAV documentation when you do this! Just Do It:

Just Do It.gif

You do not need a lot of deep technical knowledge to be helpful. If you read something and it is not clear to you, ask for an explanation in the Gitter Chat and then do not forget to add that information to the Wiki.

Some information and links on how to edit the wiki can be found at Help with Editing.

Please be aware of past edits and page histories. Try not to remove this; if you are moving/renaming a page, use the move tab at the top of a page. This ensures the revision history is moved with the page.

Software development

Learning Tools

We use the distributed version control system git. The Papaprazzi master repository is hosted on Github.

Also see the Git wiki page for more details about setting up Git and cloning the source-code and data repository.

Please also have a look at the Coding Style Guide.

Here is the short version if you already know git:

  1. Create an account on github.
  2. Fork the paparazzi repository on github. (After logging in press the fork button).
  3. If you want to clone with SSH: git clone git@github.com:<yourname>/paparazzi.git
    Or with HTTPS: git clone https://github.com/<yourname>/paparazzi.git
    Which remote URL should I use?
  4. git remote add upstream https://github.com/paparazzi/paparazzi.git
  5. git fetch upstream
  6. checkout a new branch based on the development branch (master):
    git checkout -b my_new_feature upstream/master
  7. fix/code and commit in logical units (with a good commit message)
  8. push your feature/bugfix branch
  9. Send us a pull request on github. (Or send patches to the mailing list).

Defects and Features

To report a Paparazzi defect or issue. Submit a feature request using the simple issue tracker on github.

Continuous Integration Builds

There are build servers running some Continuous Integration tests.