Difference between pages "Git: Cloning" and "Handle an OpenMRS Ticket (Activity)"
From TeachingOpenSource
(Difference between pages)
Mdoroodchi (talk | contribs) |
|||
Line 1: | Line 1: | ||
= OpenMRS Tickets = | |||
* '''Description''': Use git and Eclipse to handle an OpenMRS ticket. | |||
* '''Source''': Ben Coleman | |||
* '''Prerequisite Knowledge''': A working github account, Eclipse configured for OpenMRS | |||
* '''Estimate Time to Completion''': 60 minutes plus time to solve the ticket | |||
* '''Learning Objectives''': Ability to | |||
** fork, clone, checkout, and commit code using git and github. | |||
** follow the process defined by OpenMRS for tickets. | |||
* '''Materials/Environment''': Access to Internet / Web and web browser, git, Eclipse | |||
* '''Additional Information''': N/A | |||
* '''Rights & Licensed''': CC BY-SA FIXME check that this license is appropriate | |||
* '''Turn In''': None | |||
== Video == | |||
Watch the OpenMRS University video, http://www.youtube.com/watch?v=SbbDvMVgRWo entitled, “OpenMRS University: Contributing Code.” | |||
== Handle a Ticket == | |||
# Claim the ticket | |||
# Fork the appropriate repository on github. | |||
#* The project name is in the upper-left corner of the ticket next to the ticket id. | |||
# Clone the repository to your local machine. | |||
#* git clone <math><</math>repository url<math>></math> | |||
#* The repository url should point to the forked copy on ''your'' github account. | |||
# Set the upstream repository | |||
#* git remote add upstream <math><</math>repository url<math>></math> | |||
#* The repository url should point to the original copy of the project on github. | |||
#* You must be in the project directory for this command to succeed. | |||
# Fetch all the current branches of the project. | |||
#* get fetch –all | |||
#* FIXME I don’t quite understand why this is necessary. What did we have after the clone? | |||
# Pull all changes from the upstream master | |||
#* git pull –rebase upstream master | |||
#* FIXME In the video and on my sample ticket, there were no changes. I don’t understand how there could be after the fetch (much less after the clone). | |||
# Create a branch to work in | |||
#* git checkout -b <math><</math>branch name<math>></math> | |||
#* Use the ticket identifier as the branch name. | |||
# Import the project into Eclipse | |||
#* Use the “Browse..” button to point at the directory containing the project. | |||
# Tell Eclipse that the project uses git. | |||
#* Select all the projects, and then right click. Select “Team” and then “Share Project...” The default opens are correct. | |||
#* Do not use “Share Projects” (plural). This is for adding a new form of sharing. | |||
# Handle the issue described in the ticket... | |||
# Add your changes to the staging area of your local repository. | |||
#* git add -i for an interactive add. | |||
#* git add <math><</math>filename<math>></math> to add specific files | |||
# Commit your changes to your local repository | |||
#* git commit -m "<math><</math>ticket id<math>></math>: <math><</math>commit message<math>></math>" | |||
# Push the changes in your branch back to the origin on github. | |||
#* git push origin <math><</math>branch id<math>></math> | |||
# Change to the branch on github, and make a pull request | |||
#* Include the URL of the ticket. | |||
#* Be sure to check the “Commits” and “Files Changed” tabs to be sure you are sending the correct changes. | |||
# Request a code review on the ticket page | |||
#* Include the URL of the pull request in the comment for the code review. | |||
# Wait. Someone from OpenMRS will respond to the pull request. | |||
Revision as of 15:19, 13 June 2013
OpenMRS Tickets
- Description: Use git and Eclipse to handle an OpenMRS ticket.
- Source: Ben Coleman
- Prerequisite Knowledge: A working github account, Eclipse configured for OpenMRS
- Estimate Time to Completion: 60 minutes plus time to solve the ticket
- Learning Objectives: Ability to
- fork, clone, checkout, and commit code using git and github.
- follow the process defined by OpenMRS for tickets.
- Materials/Environment: Access to Internet / Web and web browser, git, Eclipse
- Additional Information: N/A
- Rights & Licensed: CC BY-SA FIXME check that this license is appropriate
- Turn In: None
Video
Watch the OpenMRS University video, http://www.youtube.com/watch?v=SbbDvMVgRWo entitled, “OpenMRS University: Contributing Code.”
Handle a Ticket
- Claim the ticket
- Fork the appropriate repository on github.
- The project name is in the upper-left corner of the ticket next to the ticket id.
- Clone the repository to your local machine.
- git clone <math><</math>repository url<math>></math>
- The repository url should point to the forked copy on your github account.
- Set the upstream repository
- git remote add upstream <math><</math>repository url<math>></math>
- The repository url should point to the original copy of the project on github.
- You must be in the project directory for this command to succeed.
- Fetch all the current branches of the project.
- get fetch –all
- FIXME I don’t quite understand why this is necessary. What did we have after the clone?
- Pull all changes from the upstream master
- git pull –rebase upstream master
- FIXME In the video and on my sample ticket, there were no changes. I don’t understand how there could be after the fetch (much less after the clone).
- Create a branch to work in
- git checkout -b <math><</math>branch name<math>></math>
- Use the ticket identifier as the branch name.
- Import the project into Eclipse
- Use the “Browse..” button to point at the directory containing the project.
- Tell Eclipse that the project uses git.
- Select all the projects, and then right click. Select “Team” and then “Share Project...” The default opens are correct.
- Do not use “Share Projects” (plural). This is for adding a new form of sharing.
- Handle the issue described in the ticket...
- Add your changes to the staging area of your local repository.
- git add -i for an interactive add.
- git add <math><</math>filename<math>></math> to add specific files
- Commit your changes to your local repository
- git commit -m "<math><</math>ticket id<math>></math>: <math><</math>commit message<math>></math>"
- Push the changes in your branch back to the origin on github.
- git push origin <math><</math>branch id<math>></math>
- Change to the branch on github, and make a pull request
- Include the URL of the ticket.
- Be sure to check the “Commits” and “Files Changed” tabs to be sure you are sending the correct changes.
- Request a code review on the ticket page
- Include the URL of the pull request in the comment for the code review.
- Wait. Someone from OpenMRS will respond to the pull request.