diff --git a/maven-site/src/site/apt/building.apt b/maven-site/src/site/apt/developers/building.apt similarity index 98% rename from maven-site/src/site/apt/building.apt rename to maven-site/src/site/apt/developers/building.apt index 7a7b72d78a..df095023ff 100644 --- a/maven-site/src/site/apt/building.apt +++ b/maven-site/src/site/apt/developers/building.apt @@ -53,7 +53,11 @@ svn co http://svn.apache.org/repos/asf/maven/components/trunk maven-components ---- export M2_HOME=/usr/local/maven-2.0-SNAPSHOT PATH=$M2_HOME/bin:$PATH +---- + or + +---- set M2_HOME=c:\maven-2.0-SNAPSHOT set PATH=%M2_HOME%\bin;%PATH% ---- @@ -62,7 +66,11 @@ set PATH=%M2_HOME%\bin;%PATH% ---- sh m2-bootstrap-all.sh +---- + or + +---- m2-bootstrap-all.bat ---- @@ -77,7 +85,5 @@ m2-bootstrap-all.bat * M2_HOME directory contains a valid installation of m2 (ie $M2_HOME/bin/m2.conf or %M2_HOME%\bin\m2.conf exists). - If you have any problems or get any failures during the run, please report them to the + If you have any problems or get any failures during the run, please report them to the {{{/mail-lists.html} Maven Developers List}}. - - diff --git a/maven-site/src/site/apt/developers/development-guide.apt b/maven-site/src/site/apt/developers/development-guide.apt index b9e5726972..0ed03ec28e 100644 --- a/maven-site/src/site/apt/developers/development-guide.apt +++ b/maven-site/src/site/apt/developers/development-guide.apt @@ -2,27 +2,135 @@ Development Guide ------ Emmanuel Venisse +Trygve Laugstol ------ 8 July 2005 ------ -~~ Copyright 2001-2004 The Apache Software Foundation. -~~ +~~ Copyright 2005 The Apache Software Foundation. +~~ ~~ Licensed under the Apache License, Version 2.0 (the "License"); ~~ you may not use this file except in compliance with the License. ~~ You may obtain a copy of the License at -~~ +~~ ~~ http://www.apache.org/licenses/LICENSE-2.0 -~~ +~~ ~~ Unless required by applicable law or agreed to in writing, software ~~ distributed under the License is distributed on an "AS IS" BASIS, ~~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ~~ See the License for the specific language governing permissions and ~~ limitations under the License. -Subversion configuration +Developing Maven 2 - Before committing files in subversion repository, you need to read the - {{{http://www.apache.org/dev/version-control.html#https-svn}Committer Subversion Access}} - document and you must set your svn client - with these properties file : {{svn-eol-style.txt}} + This document describes how to get started into developing Maven 2 itself. There is a separate page describing how + to {{{building.html}building Maven 2}}. + +* Finding some work to do + + First of all you need something to work on! Unless you have found a particular issue you would like to work on + the Maven team has categorized a few issues that we could use help to solve them. The list is on our + {{{http://docs.codehaus.org/display/MAVEN/How+to+help}Conflucene wiki}} and will be updated every 60 minutes. + + JIRA also has RSS feeds available if you'd like to include those in your favorite feed aggregator. + + We categorize the issues in three different categories: + + * <>: No previous exposure to the code needed. + <({{{http://jira.codehaus.org/secure/IssueNavigator.jspa?view=rss&pid=10500&resolutionIds=-1&customfield_10010=Novice&sorter/field=priority&sorter/order=ASC&sorter/field=issuekey&sorter/order=ASC&tempMax=25&reset=true&decorator=none}rss feed}})> + + * <>: Exposure to Maven pluins and/or internals required. + <({{{http://jira.codehaus.org/secure/IssueNavigator.jspa?view=rss&pid=10500&resolutionIds=-1&customfield_10010=Intermediate&sorter/field=priority&sorter/order=ASC&sorter/field=issuekey&sorter/order=ASC&tempMax=25&reset=true&decorator=none}rss feed}})> + + * <>: Good knowledge of Maven internals and it's dependencies required. + <({{{http://jira.codehaus.org/secure/IssueNavigator.jspa?view=rss&pid=10500&resolutionIds=-1&customfield_10010=Expert&sorter/field=priority&sorter/order=ASC&sorter/field=issuekey&sorter/order=ASC&tempMax=25&reset=true&decorator=none}rss feed}})> + + [] + + When you find a issue you would like to work on add a comment in the issue log so the core developers and other + people looking for work know that someone is already working on it. + +* Creating and submitting a patch + + When you have either completed an issue or just want some feedback on the work you have done, create a patch + and attache the patch to the issue in question. We have a couple of guidelines when creating patches: + + * Always create the patch from the root of the maven project, i.e. where the pom.xml file is. + + * Name the file <<-.patch>>>. + + [] + + An example on how to create a patch from the command line: + +--- +$ svn diff > MNG-123-maven-core.patch +--- + + If you are picking up an issue with a existing patch attached to the issue you can apply the patch to your working + directory directly from JIRA like this. The <<>> and <<>> commands will only be available if you are + on a UNIX platform or Cygwin on windows. + +--- +$ wget -O - -q | patch -p0 +--- + + If the patch is in a local file <<>> and you want to apply that use this command: + +--- +$ patch -p0 < MNG-123.patch +--- + +* Other useful Subversion commands while developing + + If you've done a chunk of work and you would like ditch your changes and start from scratch use this command to + revert to the original checkout: + +--- +$ svn revert -R . +--- + + The <<<-R>>> argument means that the command will recurse down all directories and revert all changes. + + Before committing code to the Subversion repository we always set the <<>> property on the directory + to prevent some files and directories to be checked in. We always exclude the IDE project files and the <<>> + directory. Instead of keeping all of the excludes in mind all the time it's useful to put them all in a file and + reference the file with the <<<-F>>> option: + +--- +$ svn propset . svn:ignore -F ~/bin/svnignore +--- + + An example svnignore file: + +--- +target +*~ +*.log +.classpath +.project +*.ipr +*.iws +*.iml +--- + +* Dependent Projects + + Maven 2 has a few dependencies on other projects. TODO: Write more details here. + + * Modello + + * Surefire + + * Plexus + + * Doxia + + * Mojo + +* Subversion Configuration + + Before committing files in subversion repository, you need to read the + {{{http://www.apache.org/dev/version-control.html#https-svn}Committer Subversion Access}} + document and you must set your svn client + with these properties file : {{svn-eol-style.txt}} diff --git a/maven-site/src/site/fml/about.fml b/maven-site/src/site/fml/about.fml index 4ebae76be1..2e21df2a31 100644 --- a/maven-site/src/site/fml/about.fml +++ b/maven-site/src/site/fml/about.fml @@ -135,7 +135,7 @@

For instructions on checking out and building Maven 2.0, see - Building Maven 2.0. + Building Maven 2.0.

For more information, please see diff --git a/maven-site/src/site/fml/general.fml b/maven-site/src/site/fml/general.fml index d878c12522..7261b53e94 100644 --- a/maven-site/src/site/fml/general.fml +++ b/maven-site/src/site/fml/general.fml @@ -107,7 +107,7 @@ The source code can be found in subversion: http://svn.apache.org/repos/asf/maven/components/trunk.

- For more information, see Building Maven 2.0. + For more information, see Building Maven 2.0.

diff --git a/maven-site/src/site/site.xml b/maven-site/src/site/site.xml index f31c4d9ea6..3cfea2edce 100644 --- a/maven-site/src/site/site.xml +++ b/maven-site/src/site/site.xml @@ -40,6 +40,11 @@ + + + + + @@ -49,10 +54,5 @@ ${reports} - - - - - diff --git a/maven-site/src/site/xdoc/index.xml b/maven-site/src/site/xdoc/index.xml index 65c8b6b7c3..209fa0b08e 100644 --- a/maven-site/src/site/xdoc/index.xml +++ b/maven-site/src/site/xdoc/index.xml @@ -169,7 +169,7 @@
  • How do I - build Maven 2.0? + build Maven 2.0?
  • @@ -182,4 +182,3 @@ -