Skip to content

Latest commit

 

History

History
100 lines (78 loc) · 4.44 KB

Contribute.md

File metadata and controls

100 lines (78 loc) · 4.44 KB
layout title permalink
code
How to Contribute
/Contribute.htm

How to Contribute

Thank you for your interest in contributing to the Windows Developer Program for IoT.

We're actively accepting work for the following areas:

  • Getting Started Guide
  • Galileo SDK
  • Tutorials
  • Adding or removing pointers to Projects
  • Adding or removing pointers to Library Ports
  • Adding or removing pointers to Arduino Shield Ports

References

  1. GitHub Documentation
  2. Git Cheatsheet!
  3. Git Documentation


Fork the repository

  1. Create a GitHub account by starting at GitHub Home
  2. Go to GitHub Home and navigate to the repository you'd like to contribute to, click Fork
    Fork
  3. On GitHub, Navigate to your account's fork of the repository
  4. Clone the repository in one of two ways:
    1. You can use command line
      git clone [link to .git] [NameYourLocalFolder]
    2. Or launch the GitHub app by clicking 'Clone in Desktop' on the right hand side of the repository
      Clone

##Using Git If you are editing a fork of ms-iot/content, please submit pull request off of develop.
If you are editing a fork of ms-iot/galileo-sdk, please submit pull request off of develop.

For clarification, what we mean when we say:
local repository: the cloned repository that you have one on your machine
forked repository: the fork you made from the main repository. This sits up on github's servers. (Also known as "origin")
main repository: the original repository that you forked from. This is the common ms-iot repository hosted on github's servers. (Also known as "upstream")

###Setting up

  1. Set up your upstream
    • git remote add upstream [link to .git]

###Making changes

  1. Make your edits, build, and test. Use the repository's readme for any specific editing requirements, build instructions, and testing methods.
    • git add [file]
  2. Commit your changes to your local repository.
    • git commit -m "[descriptive message]"

###Submitting a Pull Request

  1. Before you submit your first pull request, we ask you to fill out a Microsoft Open Technologies Contribution License Agreement. Without this on file, we unfortunately cannot accept a pull request. In the agreement, please include the GitHub user id you are submitting the pull request from. You only need to do this once.
  2. Fetch upstream
    • git fetch --all
  3. Rebase upstream (This should now put your changes on top of the main repository's history.)
    • git rebase -i upstream/develop
    • This may highlight conflicts that you will have to hand-merge
      • You can use your favorite merging tool or even notepad for this.
    • After hand-merging, you can continue the rebase
      • git add [fileYouHandMerged]
      • git rebase --continue
  4. Force-push your changes to your forked repository.
    • git push -f origin develop
  5. Now submit your pull request from your forked repository using the GitHub website.

###Making changes to a Pull Request

  1. Make your new changes, fetch upstream, rebase upstream, and force-push your changes.
    • If your pull request was never closed, you should not have to submit a new pull request. It should automatically update.

#Iterating on the Galileo SDK Fork ms-iot/galileo-sdk as described above in the contribute section and follow the README instructions.


#Best Practices

##Do not check in binaries Once a binary is added to the repository, it will be there forever.

Please do not add binaries to Git including:

  • The output from a build (debug/release)
  • SDF file (code database)
  • Nuget package directories

Acceptable binaries:

  • PNG, JPG, or other image formats