You are here to help on PassWall? Awesome, feel welcome and read the following sections in order to know how to ask questions and how to work on something.
- Ask usage questions ("How do I?") on StackOverflow.
- Report bugs or suggest features on GitHub issues.
- Discuss topics on Slack.
- Email us at [email protected].
-
First look for help wanted issues.
-
Then you can try to fix // TODO:'s in the code.
-
If you have a good idea as a
feature
or find abug
, feel free to open an issue about it and tell us that you want to work on this subject.
When you find something to contribute;
-
Open an issue about it,
-
Make sure that nobody assigned for that issue,
-
Tell us that you want to work on the issue and get you assigned.
Good pull requests - patches, improvements, new features - are a fantastic help. They should remain focused in scope and avoid containing unrelated commits.
Please ask first before embarking on any significant pull request (e.g. implementing features, refactoring code), otherwise you risk spending a lot of time working on something that the project's developers might not want to merge into the project.
PassWall uses the branch naming policy below.
Instance | Branch | Description, Instructions, Notes |
---|---|---|
Stable | stable | Accepts merges from Working and Hotfixes |
Working | master | Accepts merges from Features/Issues and Hotfixes |
Features/Issues | topic-* | Always branch off HEAD of Working |
Hotfix | hotfix-* | Always branch off Stable |
More about branchs and workflow here
If you never created a pull request before, welcome 🎉 😄 Here is a great tutorial on how to send one :)
-
Fork the project, clone your fork, and configure the remotes:
# Clone your fork of the repo into the current directory git clone https://github.com/<your-username>/<repo-name> # Navigate to the newly cloned directory cd <repo-name> # Assign the original repo to a remote called "upstream" git remote add upstream https://github.com/passwall/<repo-name>
-
If you cloned a while ago, get the latest changes from upstream:
git checkout master git pull upstream master
-
Create a new topic branch (off the main project development branch) to contain your feature, change, or fix:
git checkout -b <topic-branch-name>
-
Make sure to update or add to the tests when appropriate. Patches and features will not be accepted without tests.
-
If you added or changed a feature, make sure to document it accordingly in the
README.md
file. -
Push your topic branch up to your fork:
git push origin <topic-branch-name>
-
Open a Pull Request with a clear title and description.
When filing an issue, make sure to answer these five questions:
- What version of Go are you using (go version)?
- What operating system and processor architecture are you using?
- What did you do?
- What did you expect to see?
- What did you see instead?