Skip to content

Commit

Permalink
Create issue_handling
Browse files Browse the repository at this point in the history
  • Loading branch information
Nathan-Wang committed Dec 10, 2012
1 parent 048bc2b commit 6087e61
Showing 1 changed file with 53 additions and 0 deletions.
53 changes: 53 additions & 0 deletions docs/developers/issue_handling
@@ -0,0 +1,53 @@
==============
Issue Handling
==============

Bugs, imperfect designs, outdated information, or inaccurate descriptions are occasionally found on webpage or during data processing. Successful development of GeoNode web application needs to solve those issues through a systematic issue handling procedure. This issue handling procedure includes 3 parts: report, solve and merge, and we can further brake it down into 9 steps. All steps are described below.

Step 1. Report your issue
=========================
Report a new issue in Github. Click on Issues tab (note the red arrow) and then click New Issue button (the purple arrow).

Step 2. Create a new branch to work on the issue
================================================
Now switch to the geonode folder on your laptop. Assume that git is already installed; otherwise you can download it from http://git-scm.com/downloads and follow documentation to set it up. Once git is set up and the dev branch is in sync with remote geonode dev branch, you can branch out a branch to specifically deal with one issue. Say the issue number is 101. So you name a new branch “issue-101” using the syntax below.

git checkout -b issue-101

Step 3. Check if you are on the new branch
==========================================
Normally once you create a new branch, you will automatically switch to it. But to make sure, you can check which branch you are by the command below. It will tell you the branch you are currently working on.

git status

It should look like:

# On branch issue-101

Step 4. Fix the bug
===================
Once you are on the designated branch, you can start to solve the issue. Use vi, gedit or other text edit tools to make changes on the source code, and save the changes.

Step 5. Commit your changes
===========================
Assume you have fixed the bug and tested it well on your local machine. Before you submit to online repository, there is another important step: commit your changes to the local repository. That approach will protect you from losing any change when you switch to another branch. It permanently saves your changes and will bring them up next time when you switch back to this branch.

git commit –a –m “your message for this commit”

Step 6. Push changes to your own remote repository
==================================================
Now you are confident that you have solved the problem, and want to merge your contribution to the main code repository on Github, using the syntax below. This syntax will allow you to upload changes to your own remote repository. Note that the remote repository will be a mirror of your local repository so all branches on your local repository will be copied there. Here you upload to the issue-101 remote branch. Authentication information may show up and please type in your username and password if required.

git push origin issue-101

Step 7. Make a pull request(PR)
===============================
Congratulations! You are almost done. The last step is to make a pull request from the issue-101 branch of your own remote repository to the main geonode dev branch. You need to do that from Github. First, make sure you on are the right branch (note the red arrow). By clicking the Pull Request button (the purple arrow), you are led to a new page where you need to specify that you are merging to geonode dev branch and mention issue #101 (with ‘#’) in your request text to link this PR back to the standing issue.

Step 8. Check travis
====================
Automatical process

Step 9. Check Jenkins
=====================
Automatical process

0 comments on commit 6087e61

Please sign in to comment.