[[http://wiki.github.com/schacon/ticgit/][ticgit]] is the issue tracker we'll be using that's integrated with git: Setting up <nop>RubyGems so gems are installed into your home directory (i.e. on the lab computers): 1. Download [[http://rubyforge.org/frs/?group_id=126][RubyGems]] and extract it anywhere. 2. Set up <nop>RubyGems in your user directory: * =cd= into the folder where you extracted the above. * =ruby setup.rb --prefix=~/rubygems= to specify the install directory. * =export GEM_HOME=~/rubygems/gems= to specify the directory to install gems into. 3. Add the =~/rubygems/bin/= into your PATHs. * open up =~/.bashrc= (e.g. with =gedit ~/.bashrc=) * Add the following lines: * =#Add ruby path= * =PATH=~/rubygems/bin:$PATH= * =PATH=~/rubygems/gems/bin:$PATH= * =export PATH= 4. Save the file. 5. Type the last 3 commands above into the terminal as well. 6. Perform the commands below starting from Step 3. This is what I had to do to install it on my Windows machine via cygwin: 1. install =ruby= (via the Cygwin installer) 2. install =gem=, as specified [[http://www.cygwin.com/ml/cygwin/2007-05/msg00439.html][here]] 3. add the github gem repository to your search, as instructed at the bottom of [[http://wiki.github.com/schacon/ticgit/][here]] * =gem sources -a <nop>http://gems.github.com= * =gem install defunkt-github= 4. for good measure, and in an attempt to cover all required dependencies * =gem install [[http://yardoc.org/][yard]]= * =gem install [[http://rubyonrails.org/download][rails]]= * =gem install [[http://rake.rubyforge.org/][rake]]= * =gem install [[http://wiki.github.com/aslakhellesoy/cucumber/ruby-on-rails][cucumber-rails]]= 5. in any location, clone Chris' ticgit build... as all the other ones we found were broken :( * =git clone <nop>http://github.com/cthachuk/ticgit.git= 6. navigate into the newly created =ticgit= folder, "make" it, then install it * =rake setup= * =rake install= (cygwin doesn't need it, but you may need to append =sudo= in front...) 7. If all went well, you should have ticgit in your system, you can confirm by listing installed =gems= with: * =gem list= (should have ticgit (2010.05.03)) * You can delete the ticgit directory now if you want... Setting it up with the repo: 1. delete any currently existing ticgit branches * =git branch -D ticgit= 2. update origin (step may break... ignore and move on should be fine?) * =git pull= 3. Create a new ticgit tracking branch * =git branch --track ticgit origin/ticgit= Using ticgit: * =ti list= to display all items * =ti show ticket_id= to show details (where =ticket_id= is the short hex thing displayed in list) * instead of typing the full ticket id, you may also use an integer from 1 to n, where n is the number of items displayed on the last instance of =ti list= * e.g. =ti show 1= * =ti new -t 'insert title'= for create new ticket with given title * =ti -h= for list of commands * =ti some_command --h= for usage of a specific command Note that most commands will take ticket_id as an argument, besides the integer number shortcut, you may also use: * =ti checkout 1= (checks out the first ticket on the list) * =ti list=, note how the ticket you specified is now starred * =ti show=, all subsequent operations will performed on your checked out ticket without need to specifying a ticket Typical ticket creation work flow * =ti sync= (make sure your tickets are up to date...) * =ti new -t 'small description of the issue within apostrophes'= * =ti checkout ticket_id_of_above_issue= * =ti tag bug= (let's try to stick to three tags =bug=, =feature=, =improvement=... although we may add new ones if the need arises) * =ti tag -d existing_tag= (to remove some tag if you mess up) * =ti comment -m 'more indepth description can go here'= * =ti comment= without arguments will allow you to type a message in an editor * =ti assign -u user_name= (if you want to push this onto some other poor soul) * =ti sync= (to let others knows of issue) Typical ticket resolution/modification work flow * =ti sync= * =ti checkout ticket_id_of_interest= * =ti comment -m 'new message'= (to add more comments) * =ti state resolved= (besides =resolved=, other valid states are =hold=, =invalid=, and =open=) * =ti sync= I unfortunately... have not figured out how un-checkout a ticket... Incidentally, you can delete tickets like so: * =git checkout ticgit= * =git rm -r ticket_folder_name= (will contain title... check with =ls=) * =git commit -m "some message goes here"= * =git checkout dev= (continue as usual) * =ti sync=
This topic: BETA
>
TipsAndTricks
>
WebHome
>
NGSAlignerProject
>
TicGitUsage
Topic revision: r3 - 2010-05-04 - jayzhang
Copyright © 2008-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback