Skip to content
andresriancho edited this page Mar 13, 2013 · 34 revisions

Introduction

Ready to contribute with the w3af project but don't know anything about git or development? This guide will help you contribute.

10 steps to contributing

  1. Create a Github user and add your SSH key
  2. Fork the w3af repository by browsing w3af's project page and clicking on the "Fork" button that's on the top-right part of the page
  3. Learn about Git by reading through these documents:
  1. Install and configure git, make sure you enter the correct values for git config:
sudo apt-get install git git-flow
git config --global user.name "Your Name Here"
git config --global user.email "[email protected]"
  1. Download the source code from your fork and start a new feature branch with git-flow. Make sure you replace <username> in the first command, <feature_name> in the last:
git clone --recursive [email protected]:<username>/w3af.git
cd w3af
git branch master origin/master
git flow init -d
git flow feature start <feature_name>
  1. Modify w3af's source code and test it as much as possible
  2. Verify all your changes are shown with status and diff. If new files are missing, add them.
git status
git diff
git add plugins/some/file.py
  1. Use git commit path/to/changes/ to commit your changes, make sure you describe exactly what you've done and how you tested it.
  2. Push your changes to Github:
git flow feature finish <feature_name>
git push
  1. Replace <username> in this link and copy+paste it in your browser in order to create a "Pull Request". Complete the required parameters in order for us to understand your changes. If all goes well, we'll merge your changes into w3af's main repository.
https://github.com/<username>/w3af/pull/new/master

Advanced contributors

Advanced contributors and w3af developers need to follow all the guidelines explained in the Developer's-Guide document.