This repository has been archived by the owner on May 3, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 27
How to contribute
axelsimon edited this page Aug 5, 2019
·
30 revisions
The Enarx project welcomes contributions!
You will find some information here that aims to make it easier for new comers to contribute.
Note: this page is a work in progress
To contribute this Github repo, you will need to set up your environment. Here are a few pointers to help you do so.
On the Github side:
- Ensure you have an SSH key set up. If you do not, you can generate one with the following command:
-
ssh-keygen -t ed25519 -C "$(whoami) on $(hostname), generated on $(date -I)"
Then add it to your Github profile.
-
- Fork the desired repo on github.com to your user. On a given repo, use the "fork" button at the top right.
On your local machine:
- If you have not already done so, set your username and email:
git config --global user.name "your name"
git config --global user.email "[email protected]"
- Clone your fork locally:
git clone https://github.com/<your_username>/<enarx_repo>
- Add an "upstream" remote to your local git repo:
git remote add upstream https://github.com/enarx/<enarx_repo.git>
- (To check the remote repositories:
git remote -v
) - Create a branch for your work:
git checkout -b <your_working_branch>
- Make your changes, then add the changed files to the staging area:
-
git add <file>
(orgit add -a
to take into account all modified files, including deletions)
-
- Commit your changes:
git commit -m "commit message here"
- Push your change:
git push
Then, on Github, find your branch and request a Pull Request, so that the code may be reviewed and, if all goes well, merged into the main code base.
Later, once changes have been made to the Enarx repo:
-
Sync the fork:
git fetch upstream
- Ensure you are on your master branch:
git checkout master
- Make sure your local master branch is up to date with the upstream (that any commits you've made that aren't already in upstream/master are replayed on top of that other branch):
git rebase upstream/master
- go on to making changes again on your working branch, committing them etc..