Dear Wiki user,

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

The "HowToContribute" page has been changed by JonathanEllis.
The comment on this change is: add section on svn merging.
http://wiki.apache.org/cassandra/HowToContribute?action=diff&rev1=33&rev2=34

--------------------------------------------------

   1. If not, create a ticket describing the change you're proposing in the 
issue tracker
   1. Check out the latest version of the source code
    * svn checkout http://svn.apache.org/repos/asf/cassandra/trunk 
cassandra-trunk
-     or
+    . or
    * git clone git://git.apache.org/cassandra.git
   1. Modify the source to include the improvement/bugfix
    * Verify that you follow Cassandra's CodeStyle.
@@ -37, +37 @@

  ''Note: If you're setup with both the Thrift and Avro dependencies, you can 
run all of the tests by simply typing `nosetests` from the top-level directory''
  
  === Running the code coverage task ===
- 
   1. Unzip this one: 
http://sourceforge.net/projects/cobertura/files/cobertura/1.9.4.1/cobertura-1.9.4.1-bin.zip/download
   1. `ant codecoverage -Dcobertura.dir=/path/to/cobertura`
   1. `/path/to/cobertura/cobertura-report.sh --destination 
build/cobertura/html source code src/java`
@@ -49, +48 @@

  
  == IDE ==
   * [[RunningCassandraInIDEA]]
-  * [[RunningCassandraInEclipse]]
+  * RunningCassandraInEclipse
   * IntelliJ Project Settings:
    * Main Class for Thrift: org.apache.cassandra.thrift.CassandraDaemon (Used 
to be  org.apache.cassandra.service.CassandraDaemon )
    * Main Class for Avro: org.apache.cassandra.avro.CassandraDaemon 
(Exprimental, introduced in 0.6)
@@ -99, +98 @@

  git config svn.authorsfile ".git/authors.txt"
  git svn init --prefix=origin/ --branches=branches 
https://svn.apache.org/repos/asf/cassandra
  }}}
+ == Committing ==
+ Got commit access?  Outstanding!  Here are the conventions we follow.
  
+  * Commit messages take the form of
+ {{{
+ <explanation>
+ patch by <author>; reviewed by <committer> for CASSANDRA-<ticket>
+ }}}
+  * When committing to multiple branches, start with the most-stable and merge 
forwards.  For instance, if you had a fix to apply to 0.6, 0.7, and trunk, you 
would first commit to 0.6.  Then, from your 0.7 branch checkout, you would run 
"svn merge https://svn.apache.org/repos/asf/cassandra/branches/cassandra-0.6";, 
resolve any conflicts, and commit.  Then, from your trunk checkout, you would 
run "svn merge 
https://svn.apache.org/repos/asf/cassandra/branches/cassandra-0.7";, again 
resolve conflicts, and commit.
+ 
+ See http://video.google.com/videoplay?docid=-577744660535947210 for an 
in-depth explanation of why fixes should be merged forwards from more-stable 
branches, rather than backported from trunk.
+ 
+ This workflow also makes it so svn knows what commits have been made to 
earlier branches but not to trunk: if you forget to merge a fix immediately, 
the next time someone goes to merge from the branch, svn will incorporate the 
forgotten ones too.
+ 

Reply via email to