Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. In the VNC/Gnome environment, either add to your .bashrc or type in your current shell unset SSH_ASKPASS
  2. Make sure you have set up your SSH key in Apache account
  3. Pushing to Apache repo requires password authentication.
  4. Make sure you have a workspace cloned from github.
  5. Make sure you have a remote pointing to the Apache repo. (Setting only the push URL with username does not seem to work.)

Automated Testing

You can interact with Jenkins testing via pull request (PR) comments. All of these commands should start with "jenkins," to not confuse other users. You can add more to the end of the message if you want. Jenkins just pattern matches the string, and will ignore trailing comments.

...

  1. Check the pull request status on github, at the bottom of the pull request page. It will tell you if there are any merge conflicts with master branch.
    1. If there are conflicts, either ask the contributor to merge up, or be prepared to resolve the conflicts yourself.
  2. Create a local merge branch, based on the latest, greatest.
    1. git fetch apache (if ssh is not setup you will be prompted for your apache password)
    2. git checkout -b mrg_12345 apache/master
  3. Fetch pull request branch to default destination FETCH_HEAD
    • git fetch origin +refs/pull/12345/head
  4. Merge locally, giving message that includes JIRA IDNormally, you want to just merge their branch:
    • git merge --no-ff -m "Merge [TRAFODION-XYZ] PR-12345 Whizbang feature" FETCH_HEAD
    • Sometimes you might want to squash their branch into a single commit. If so, add the "--squash" option.
    • If you forget the -m option, you end up with a less than helpful default comment.
      Before you push the commit, you can fix the comment by:
      • git commit --amend
  5. Additional checks of what you are preparing to push
    • git log apache/master..HEAD
    • git diff apache/master HEAD
  6. Push changes to Apache repo, specifying the source and the destination branch.
    • git push apache HEAD:master (if ssh is not setup you will be prompted for your apache password)

...