Skip to content
This repository has been archived by the owner on May 14, 2018. It is now read-only.

Instructions to merge in community quickstarts

sgilda edited this page Mar 1, 2012 · 4 revisions

Setup

  1. Add the jboss-eap remote repository

     git remote add -f eap git@github.com:jboss-eap/quickstart.git
    
  2. Checkout a branch to work with

     git checkout -b eap eap/master
    

Merge in an upstream (community) tag

  1. Make sure you have the latest of EAP and upstream

     git fetch --multiple upstream eap
    
  2. Merge the tag into EAP

     git merge <tag>
    

If you need to get rid of the merge and start over

    git reset –hard
  1. Resolve any conflicts, add the fixed files, and comment

  2. Check for any conflicts

       git status
    
  3. Modify and fix conflict in the files

  4. Add the files in which you have fixed conflicts

       git add <filename> (for any changed files)
    
  5. Commit this

       git commit -a
    
  6. Push the change to eap master. Since git assumes the same branch name locally and remote unless you say otherwise as the master branch is for local, you have to use a different name for the branch and can't use the default syntax of eap master

     git push eap eap:master
    

Change the versions for EAP 6

  1. Create a new branch to work with

     git checkout -b eap-update-version-numbers eap 
    
  2. Update the org.jboss.spec release value

     .dist/release-utils.sh -u -o 3.0.0.Beta1 -n 3.0.0.Beta1-redhat-1 
    
  3. Verify the values in the files and save any changes

  4. Dependency should look something like this:

    <dependency>
        <groupId>org.jboss.spec</groupId>
        <artifactId>jboss-javaee-6.0</artifactId>
        <version>3.0.0.Beta1-redhat-1</version>
        <type>pom</type>
        <scope>import</scope>
    </dependency>
    
  5. Property should look like this

    <javaee6.spec.version>3.0.0.Beta1-redhat-1</javaee6.spec.version>

  6. Use grep to find any missed changes, for example:

     grep '${javaee6.web.spec.version}' `find . -name 'pom.xml'` 
     grep '<javaee6.spec.version>' `find . -name 'pom.xml'` 
     grep '3.0.0.Beta1-redhat-1' `find . -name 'pom.xml'` 
     grep '${javaee6.web.spec.version}' `find . -name 'pom.xml'` 
    
  7. Remove any jboss.org repositories from the pom.xml files. They should not really contain ANY repositories. Use grep to find the files that contain these configurations:

     grep 'repository' `find . -name '*.xml'`
    
     Sections like the following must be deleted:
    
         <!-- We add the JBoss repository as we need the JBoss AS connectors for Arquillian -->
         <repositories>
             <!-- The JBoss Community public repository is a composite repository 
                of several major repositories -->
             <!-- see http://community.jboss.org/wiki/MavenGettingStarted-Users -->
             <repository>
                <id>jboss-public-repository</id>
                <name>JBoss Repository</name>
                <url>http://repository.jboss.org/nexus/content/groups/public</url>
                <!-- These optional flags are designed to speed up your builds 
                   by reducing remote server calls -->
                <releases>
                </releases>
                <snapshots>
                   <enabled>false</enabled>
                </snapshots>
             </repository>
         </repositories>
    
         <pluginRepositories>
             <pluginRepository>
                <id>jboss-public-repository</id>
                <name>JBoss Repository</name>
                <url>http://repository.jboss.org/nexus/content/groups/public</url>
                <releases>
                </releases>
                <snapshots>
                   <enabled>false</enabled>
                </snapshots>
             </pluginRepository>
         </pluginRepositories>
    
  8. Check the status again to get the list of changed files.

     git status 
    
  9. Add the changed files

     git add <file-name>
    
  10. Commit any change

     git commit
    
  11. Check out the master branch and make sure it's on the latest

     git checkout eap
     git fetch eap
     git reset --hard eap/master
    
  12. Merge and rebase the changes

    git merge eap-update-version-numbers git rebase eap/master

  13. Push to github, and create a pull request for review

    git push sgilda HEAD