Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Hama Wiki" for change 
notification.

The "HowToContribute" page has been changed by edwardyoon:
https://wiki.apache.org/hama/HowToContribute?action=diff&rev1=22&rev2=23

  == How to Contribute To Hama ==
  === Getting the source code ===
+ Download the latest stable Hama source release from 
http://www.apache.org/dyn/closer.cgi/hama and extract the files. You can get 
the latest source code using:
- First of all, you need the Hama source code. The official location for Hama 
is the Apache SVN repository; Git is also supported, and useful if you want to 
make lots of local changes -and keep those changes under some form or private 
or public revision control.
- 
- ==== SVN access ====
- Get the source code on your local drive using SVN. Most development is done 
on the TRUNK:
  
  {{{
- svn checkout https://svn.apache.org/repos/asf/hama/trunk hama-trunk
+ git clone https://git-wip-us.apache.org/repos/asf/hama.git
  }}}
- ==== Git access ====
- * git://git.apache.org/hama.git [[http://git.apache.org/hama.git/|HTTP]], 
[[http://github.com/apache/hama|github]]
  
  ==== Eclipse Project File Generation ====
  We are using Maven so you can easily generate project files for our modules.
@@ -61, +56 @@

   * New unit tests should be provided to demonstrate bugs and fixes.
   * Please resolve all warnings according to "Eclipse Warning Levels" below
  
- === Generating a patch ===
- Please make sure that all unit tests succeed before constructing your patch 
and that no new javac compiler warnings are introduced by your patch.
- 
- {{{
- > cd hama-trunk
- > mvn install
- or
- > mvn --projects core,examples install
- 
- # build website
- > mvn site
- }}}
- After a while, if you see
- 
- {{{
- BUILD SUCCESSFUL
- }}}
- all is OK.
- 
  === Creating a patch ===
  Check to see what files you have modified with:
  
  {{{
- svn stat
+   % git status
  }}}
+ 
  Add any new files with:
  
  {{{
- svn add src/.../MyNewClass.java
+   % git add any_files_you_created_modified_or_deleted
  }}}
- In order to create a patch, type (from the root directory of hama):
+ 
+ In order to create a patch, type
  
  {{{
- svn diff > HAMA-321.patch
+   % git diff --cached > /tmp/HAMA-131.patch
  }}}
- This will report all modifications done on Hama sources on your local disk 
and save them into the HAMA-321.patch file. Read the patch file. Make sure it 
includes ONLY the modifications required to fix a single issue.
+ 
+ === Submitting a pull request to GitHub ===
+ 
+ The Hama apache repository is cloned at the GitHub 
https://github.com/apache/hama, which is connected to the JIRA issue manager. 
First, you need to create a GitHub account. Then, you need to fork the Hama 
master by pushing the fork button on the Hama master. Let say that your GitHub 
username is xxxxx. You should always bring your local fork up-to-date using the 
following git commands:
+ 
+ {{{
+ # clone your local fork (NOT the Hama master)
+ git clone https://github.com/xxxxx/hama.git current
+ cd current
+ # pull all recent changes from the Hama master
+ git pull https://github.com/apache/hama.git master
+ # bring the local fork up-to-date
+ git push origin master
+ }}}
+ 
+ Lets say that you want to create a pull request for the HAMA issue 
[HAMA-1234] ...issue-title.... You need to create a new branch of your local 
fork, say named HAMA-1234
+ 
+ {{{
+ # create a new branch inside your directory 'current'
+ git checkout -b HAMA-1234
+ # ... do some changes to the files ...
+ # store changes in the branch
+ git push origin HAMA-1234
+ # commit changes to the branch
+ git commit -a -m '[HAMA-1234] ...issue-title...'
+ Then go to your GitHub HAMA page and do a Pull Request. Use the same title 
[HAMA-1234] ...issue-title....
+ }}}
  
  === Stay involved ===
  Contributors should join the Hama mailing lists. In particular, the commit 
list (to see changes as they are made), the dev list (to join discussions of 
changes) and the user list (to help others).

Reply via email to