jeffwelling / ticgit Goto Github PK
View Code? Open in Web Editor NEWThis project forked from manveru/ticgit
Git based distributed ticketing system, including a command line client and web viewer
License: Other
This project forked from manveru/ticgit
Git based distributed ticketing system, including a command line client and web viewer
License: Other
Now we have a situation:
----> 1&2 sucks. No sync. No co-operation?
Common problem 1: tickets between proprietary content-hosts such as Bitbucket.org and Github.org are not synced to TicGit.
Common problem 2: TicGitWeb sucks because we don't use it? I even ask whether devs are actually using TicGit?
TODO 1: contact Bitbucket.org for API -question, can they read Ticgit -style formatted tickets?
TODO 2: contact Github.com for API -question, can they read Ticgit -style formatted tickets?
TODO 3: if they do not co-operate, we need find alternative way to the proprietary things.
TODO 4: is it possible manage TicGit's things through Gitolite so third-parties do not need to care about parsing TicGit's branches? Yes apparently versions/milestones but too much overhead with other things?!
References
[1] https://github.com/jeffWelling/ticgit/tree/ticgit
[2] http://savannah.gnu.org/
Pagination would be helpful if there are lots of tickets
[1] #57
For some reason the milestones
command is documented, even to the point of having an associated file in the command/
directory, but is not implemented. Milestones are an important feature in many bug trackers and is an expected feature of TicGit-ng even without the misleading documentation and help output.
I just installed ticgit on Gentoo but I cannot use it. Running through the command line gives:
$ ti new
[edit the new ticket information, save and exit editor]
/usr/lib64/ruby/gems/1.8/gems/TicGit-ng-1.0.2.12/lib/ticgit-ng/ticket.rb:89:in save_new': undefined method
info' for #IO:0x7f028d694ad8 (NoMethodError)
from /usr/lib64/ruby/gems/1.8/gems/TicGit-ng-1.0.2.12/lib/ticgit-ng/base.rb:398:in in_branch' from /usr/lib64/ruby/gems/1.8/gems/git-1.2.5/lib/git/base.rb:438:in
with_working'
from /usr/lib64/ruby/gems/1.8/gems/git-1.2.5/lib/git/base.rb:437:in chdir' from /usr/lib64/ruby/gems/1.8/gems/git-1.2.5/lib/git/base.rb:437:in
with_working'
from /usr/lib64/ruby/gems/1.8/gems/TicGit-ng-1.0.2.12/lib/ticgit-ng/base.rb:395:in in_branch' from /usr/lib64/ruby/gems/1.8/gems/git-1.2.5/lib/git/base.rb:391:in
with_index'
from /usr/lib64/ruby/gems/1.8/gems/TicGit-ng-1.0.2.12/lib/ticgit-ng/base.rb:394:in in_branch' from /usr/lib64/ruby/gems/1.8/gems/TicGit-ng-1.0.2.12/lib/ticgit-ng/ticket.rb:86:in
save_new'
from /usr/lib64/ruby/gems/1.8/gems/TicGit-ng-1.0.2.12/lib/ticgit-ng/ticket.rb:32:in create' from /usr/lib64/ruby/gems/1.8/gems/TicGit-ng-1.0.2.12/lib/ticgit-ng/base.rb:103:in
ticket_new'
from /usr/lib64/ruby/gems/1.8/gems/TicGit-ng-1.0.2.12/lib/ticgit-ng/command/new.rb:32:in execute' from /usr/lib64/ruby/gems/1.8/gems/TicGit-ng-1.0.2.12/lib/ticgit-ng/cli.rb:56:in
execute!'
from /usr/lib64/ruby/gems/1.8/gems/TicGit-ng-1.0.2.12/lib/ticgit-ng/cli.rb:9:in execute' from /usr/lib64/ruby/gems/1.8/gems/TicGit-ng-1.0.2.12/bin/ti:13 from /usr/bin/ti:19:in
load'
from /usr/bin/ti:19
I also tried through the web interface (ticgitweb) but got a backtrace too:
BACKTRACE
/usr/lib64/ruby/gems/1.8/gems/sinatra-1.3.2/lib/sinatra/base.rb in write
@env['rack.errors'].puts(msg)
/usr/lib64/ruby/gems/1.8/gems/sinatra-1.3.2/lib/sinatra/base.rb in puts
@env['rack.errors'].puts(msg)
/usr/lib64/ruby/gems/1.8/gems/sinatra-1.3.2/lib/sinatra/base.rb in dump_errors!
@env['rack.errors'].puts(msg)
/usr/lib64/ruby/gems/1.8/gems/sinatra-1.3.2/lib/sinatra/base.rb in handle_exception!
dump_errors! boom if settings.dump_errors?
/usr/lib64/ruby/gems/1.8/gems/sinatra-1.3.2/lib/sinatra/base.rb in dispatch!
handle_exception!(boom)
/usr/lib64/ruby/gems/1.8/gems/sinatra-1.3.2/lib/sinatra/base.rb in call!
invoke { dispatch! }
/usr/lib64/ruby/gems/1.8/gems/sinatra-1.3.2/lib/sinatra/base.rb in invoke
res = catch(:halt) { yield }
/usr/lib64/ruby/gems/1.8/gems/sinatra-1.3.2/lib/sinatra/base.rb in catch
res = catch(:halt) { yield }
/usr/lib64/ruby/gems/1.8/gems/sinatra-1.3.2/lib/sinatra/base.rb in invoke
res = catch(:halt) { yield }
/usr/lib64/ruby/gems/1.8/gems/sinatra-1.3.2/lib/sinatra/base.rb in call!
invoke { dispatch! }
/usr/lib64/ruby/gems/1.8/gems/sinatra-1.3.2/lib/sinatra/base.rb in call
dup.call!(env)
/usr/lib64/ruby/gems/1.8/gems/rack-protection-1.2.0/lib/rack/protection/xss_header.rb in call
status, headers, body = @app.call(env)
/usr/lib64/ruby/gems/1.8/gems/rack-protection-1.2.0/lib/rack/protection/path_traversal.rb in call
app.call env
/usr/lib64/ruby/gems/1.8/gems/rack-protection-1.2.0/lib/rack/protection/json_csrf.rb in call
status, headers, body = app.call(env)
/usr/lib64/ruby/gems/1.8/gems/rack-protection-1.2.0/lib/rack/protection/base.rb in call
result or app.call(env)
/usr/lib64/ruby/gems/1.8/gems/rack-protection-1.2.0/lib/rack/protection/xss_header.rb in call
status, headers, body = @app.call(env)
/usr/lib64/ruby/gems/1.8/gems/rack-1.4.0/lib/rack/logger.rb in call
@app.call(env)
/usr/lib64/ruby/gems/1.8/gems/rack-1.4.0/lib/rack/head.rb in call
status, headers, body = @app.call(env)
/usr/lib64/ruby/gems/1.8/gems/rack-1.4.0/lib/rack/methodoverride.rb in call
@app.call(env)
/usr/lib64/ruby/gems/1.8/gems/sinatra-1.3.2/lib/sinatra/showexceptions.rb in call
@app.call(env)
/usr/lib64/ruby/gems/1.8/gems/sinatra-1.3.2/lib/sinatra/base.rb in call
synchronize { prototype.call(env) }
/usr/lib64/ruby/gems/1.8/gems/sinatra-1.3.2/lib/sinatra/base.rb in synchronize
yield
/usr/lib64/ruby/gems/1.8/gems/sinatra-1.3.2/lib/sinatra/base.rb in call
synchronize { prototype.call(env) }
/usr/lib64/ruby/gems/1.8/gems/rack-1.4.0/lib/rack/handler/webrick.rb in service
status, headers, body = @app.call(env)
/usr/lib64/ruby/1.8/webrick/httpserver.rb in service
si.service(req, res)
/usr/lib64/ruby/1.8/webrick/httpserver.rb in run
server.service(req, res)
/usr/lib64/ruby/1.8/webrick/server.rb in start_thread
block ? block.call(sock) : run(sock)
/usr/lib64/ruby/1.8/webrick/server.rb in start
Thread.start{
/usr/lib64/ruby/1.8/webrick/server.rb in start_thread
Thread.start{
/usr/lib64/ruby/1.8/webrick/server.rb in start
th = start_thread(sock, &block)
/usr/lib64/ruby/1.8/webrick/server.rb in each
svrs[0].each{|svr|
/usr/lib64/ruby/1.8/webrick/server.rb in start
svrs[0].each{|svr|
/usr/lib64/ruby/1.8/webrick/server.rb in start
yield
/usr/lib64/ruby/1.8/webrick/server.rb in start
server_type.start{
/usr/lib64/ruby/gems/1.8/gems/rack-1.4.0/lib/rack/handler/webrick.rb in run
@server.start
/usr/lib64/ruby/gems/1.8/gems/sinatra-1.3.2/lib/sinatra/base.rb in run!
handler.run self, :Host => bind, :Port => port do |server|
/usr/lib64/ruby/gems/1.8/gems/sinatra-1.3.2/lib/sinatra/main.rb in nil
at_exit { Application.run! if $!.nil? && Application.run? }
/usr/bin/ticgitweb in nil
load Gem.bin_path('TicGit-ng', 'ticgitweb', version)
GET
No GET data.
POST
Variable Value
comment
"New ticket comment."
tags
"crash"
title
"Simulation crash"
COOKIES
No cookie data.
Rack ENV
Variable Value
CONTENT_LENGTH
583
CONTENT_TYPE
application/x-www-form-urlencoded
GATEWAY_INTERFACE
CGI/1.1
HTTP_ACCEPT
text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8
HTTP_ACCEPT_CHARSET
ISO-8859-1,utf-8;q=0.7,*;q=0.7
HTTP_ACCEPT_ENCODING
gzip, deflate
HTTP_ACCEPT_LANGUAGE
en-us,en;q=0.5
HTTP_CONNECTION
keep-alive
HTTP_HOST
localhost:4567
HTTP_REFERER
http://localhost:4567/t/new
HTTP_USER_AGENT
Mozilla/5.0 (X11; Linux x86_64; rv:9.0.1) Gecko/20100101 Firefox/9.0.1
HTTP_VERSION
HTTP/1.1
PATH_INFO
/t/new
QUERY_STRING
REMOTE_ADDR
127.0.0.1
REMOTE_HOST
shockwave
REQUEST_METHOD
POST
REQUEST_PATH
/t/new
REQUEST_URI
http://localhost:4567/t/new
SCRIPT_NAME
SERVER_NAME
localhost
SERVER_PORT
4567
SERVER_PROTOCOL
HTTP/1.1
SERVER_SOFTWARE
WEBrick/1.3.1 (Ruby/1.8.7/2011-12-28)
rack.errors
rack.input
rack.logger
rack.multiprocess
false
rack.multithread
true
rack.request.cookie_hash
{}
rack.request.form_hash
{"title"=>"Simulation on angel diverge", "comment"=>"Simulations on Angel (SHARNET) fail after some time.\r\n\r\nAn example is: 20120112_15h21_C01_Xe100nm_dt000.500as_nbions01415_SyesIyesEyesTnoRyes_potSymmetric_I8e12_WL98nm_FW100.0fs_Lrelaxed_A0.0_ALmd_b01.50_oclNvidia_ang23\r\n\r\nFrom time step 356881 (178.44018 fs) to 356901 (178.450012) the total potential energy goes from -2145.97 eV to 2.433e13 eV.\r\n\r\nLooking in Pymol, the cluster "shakes" and ion #740 seems to leave it.\r\n\r\nPossible bug in the lookup table access on a GPU?", "tags"=>"crash"}
rack.request.form_input
rack.request.form_vars
title=Simulation+on+angel+diverge&tags=crash&comment=Simulations+on+Angel+%28SHARNET%29+fail+after+some+time.%0D%0A%0D%0AAn+example+is%3A+20120112_15h21_C01_Xe100nm_dt000.500as_nbions01415_SyesIyesEyesTnoRyes_potSymmetric_I8e12_WL98nm_FW100.0fs_Lrelaxed_A0.0_ALmd_b01.50_oclNvidia_ang23%0D%0A%0D%0AFrom+time+step+356881+%28178.44018+fs%29+to+356901+%28178.450012%29+the+total+potential+energy+goes+from+-2145.97+eV+to+2.433e13+eV.%0D%0A%0D%0ALooking+in+Pymol%2C+the+cluster+%22shakes%22+and+ion+%23740+seems+to+leave+it.%0D%0A%0D%0APossible+bug+in+the+lookup+table+access+on+a+GPU%3F
rack.request.query_hash
{}
rack.request.query_string
rack.run_once
false
rack.url_scheme
http
rack.version
[1, 1]
sinatra.error
When I add comment, through console, it doesn't appear when I reload ticgitweb page. (It is running locally)
I have pulled ticgit sources from github, have created local ticgit branch (tracking origin/ticgit) and switched back to ticgit. Still 'ti list' is empty. What am I doing wrong. How can I see all tickets for this project?
Can we get voting on tickets?
This could raise problems when it comes time to sync but other bug trackers don't support voting or dont support manually tweaking the vote counts via their respective APIs.
On Debian and Ubuntu systems, ticgitweb won't run unless it's called by it's full path such as
/var/lib/gems/1.8/gems/TicGit-ng-1.0.2.3/bin/ticgitweb
A message has been sent to the sinatra mailing list to see if they have any insights into the matter.
Hello,
when I try to attach a file I had the following error.
gems/TicGit-ng-1.0.2.11/lib/ticgit-ng/command.rb:30:in const_get': no such file to load -- ticgit-ng/command/attach (LoadError) from /Users/Marco/.rvm/gems/ruby-1.9.2-p290/gems/TicGit-ng-1.0.2.11/lib/ticgit-ng/command.rb:30:in
get'
from /Users/Marco/.rvm/gems/ruby-1.9.2-p290/gems/TicGit-ng-1.0.2.11/lib/ticgit-ng/cli.rb:35:in execute!' from /Users/Marco/.rvm/gems/ruby-1.9.2-p290/gems/TicGit-ng-1.0.2.11/lib/ticgit-ng/cli.rb:9:in
execute'
from /Users/Marco/.rvm/gems/ruby-1.9.2-p290/gems/TicGit-ng-1.0.2.11/bin/ti:13:in <top (required)>' from /Users/Marco/.rvm/gems/ruby-1.9.2-p290/bin/ti:19:in
load'
from /Users/Marco/.rvm/gems/ruby-1.9.2-p290/bin/ti:19:in `
It seems normal to me, because the command is registered,
https://github.com/jeffWelling/ticgit/blob/deving/lib/ticgit-ng/command.rb
register 'Attach', 'Attach file to ticket', 'attach'
But then the file attach.rb is not present.
thanks and regards,
Marco
Merging deving branch into switch_to_grit produces merge conflicts that need resolving.
Hello,
https://github.com/jeffWelling/ticgit/blob/deving/lib/ticgit-ng/command/assign.rb#L31
elsif ARGV.length == 2 #ti assign {ticid}
tic_id=ARGV[2]
shouldn't be
elsif ARGV.length == 2 #ti assign {ticid}
tic_id=ARGV[1]
:-)
Regards,
Marco
I cannot understand why ticgit uses a separate branch for tickets. In Gitolite (permission -management), it creates a separate repository. Why not to create a separate repository under Gitolite with ticgit so it is easy to manage all tickets in the Gitolite -management in the same place -- current ideology of creating always new branches feel shortsighted.
PROPOSAL 0: do not create separate branches for ticgit, replace it with Gitolite -style central repo so manager can manage tickets more easily in one place
---> creating consistency with Gitolite -style management -- and why on earth do we need an extra branch for tickets?
Hello,
https://github.com/jeffWelling/ticgit/blob/deving/lib/ticgit-ng/command/recomment.rb#L28
there are 2 bugs
1- a misspell (options.messsage -> options.message)
(at least on my SO - Mac OS Lion) get_editor_message is an array, and get a cast error (cannot cast an Array in String).
I workaround it with get_editor_message[0]
thanks
hello,
https://github.com/jeffWelling/ticgit/blob/deving/lib/ticgit-ng/command/tag.rb#L20
ti tag 705898 test
in this case, the code called is
elsif ARGV.size > 2 #tag
tic.ticket_tag(ARGV[2], nil, options)
-> ticket_id is nil -> is updating always the first ticket
should be
elsif ARGV.size > 2 #tag
tid = ARGV[1].chomp
tic.ticket_tag(ARGV[2], tid, options)
thanks
NEW: create a gui that manages the milestones and priorities. Rollback to 2008/2009 -version to keep things simple [6] with Ticgit -version. If content-hosts such as Github.com or Bitbucket.org do not want to suppot exportation of tickets, we cannot do much here -- stop developing with them, simple.
OLD: Some clutter [1][2][3], ticgit Bitbucket -style-clone-UI [4] and Github -style-graphical-bells-and-whistles-analysis-tool [5].
References
[1] #58 (comment)
[2] #57
[3] #56
[4] #51
[5] http://stackoverflow.com/questions/11251941/how-can-i-see-github-style-things-such-as-punchcards-and-timeline-of-git-repo
[6] #64
Need to switch away from deprecated git gem. We already have to monkey-patch around one bug in it, and now we've encountered another (issue #36) where coloured git output causes problems. Upgrading away from the git gem is becoming more and more of an attractive solution to the growing list of problems.
hello,
as the order ascending or descending is supported, can you add this information into the help?
currently
ti list --help
-o, --order ORDER Field to order by - one of : assigned,state,date,title
proposed
ti list --help
-o, --order ORDER Field to order by - one of : assigned,state,date,title [.desc for reverse order]
It is useful for a list order by date, as the default is to order by the less recent issue.
I found it in the code. :-)
https://github.com/jeffWelling/ticgit/blob/deving/lib/ticgit-ng/base.rb#L172
I would like to know why you have created so many dummy forks? I personally create them by accident when I manage repos over many computers but they are really bad... I don't know how but I would like to kill the unnecessary forks by you there [1], it is hard to find the genuine forks that are really under development. I am investigating whether someone is developing now something from this code or the best option complete rewrite or something else?
[color] ui = always
in gitconfig causes several errors.
The branchnames contains the shell color sequences: \e[32mmaster\e[m
. If I turn the colors off, i get the plain master
branchlable.
Greetings Sven
P.S.: I'll post this issue to the git-gem issue list, because I think it's better to solve the bug there.
P.P.S.: There is already a ticket.
Hello,
when I cannot force the port on sinatra server
ticgitweb -p 1234
= Sinatra/1.0 has taken the stage on 4567 for development with backup from Thin
Thin web server (v1.3.1 codename Triple Espresso)
Maximum connections set to 1024
Listening on 0.0.0.0:4567, CTRL+C to stop
I am running it with ruby 1.8.7 an 1.9.2 on Mac OS
I followed the instructions here [1] for the installation on ubuntu.
[1] https://github.com/jeffWelling/ticgit
ERR -dump
$ ti tag
You need to at least specify one tag to add
/var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/command/tag.rb:26:in parser': wrong number of arguments (0 for 1) (ArgumentError) from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/command/tag.rb:26:in
execute'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:56:in execute!' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:9:in
execute'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/bin/ti:13
from /usr/local/bin/ti:19:in `load'
from /usr/local/bin/ti:19
$ ti attach
/var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/command.rb:29:in const_get': no such file to load -- ticgit-ng/command/attach (LoadError) from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/command.rb:29:in
get'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:45:in execute!' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:9:in
execute'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/bin/ti:13
from /usr/local/bin/ti:19:in `load'
from /usr/local/bin/ti:19
Should be able to search through tickets and view the result
Hello,
I have the feeling the command "milestone" is not implemented.
https://github.com/jeffWelling/ticgit/blob/master/lib/ticgit-ng/command/milestone.rb
If I look at the code (also comparing with other commands), I can see a function
def parser(opts)
But (differently from other command) I did not found a function
def execute
which is pointing to the actual milestone implementation.
The command seems is not doing anything when I launch it.
Am I missing something?
thanks
In the About section in the README, it still says:
Right now, ticket branch merges need to be done manually and separately, but work is being done on a ti sync command to make this easier and more intuitive.
But this is inaccurate, as 'ti sync' capability has already been released in 1.0.1
I installed Ruby 1.9.3
Then ran gem install TicGit-ng
at the command line.
Then ran ti --help
and got this:
C:/Ruby193/lib/ruby/gems/1.9.1/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng.rb:18: Use RbConfig instead of obsolete and deprecated Config.
C:/Ruby193/lib/ruby/gems/1.9.1/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:257:in `trap': unsupported signal SIGWINCH (ArgumentError)
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:257:in `<top (required)>'
from C:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from C:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng.rb:37:in `<top (required)>'
from C:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from C:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/TicGit-ng-1.0.2.14/bin/ti:11:in `<top (required)>'
from C:/Ruby193/bin/ti:23:in `load'
from C:/Ruby193/bin/ti:23:in `<main>'
No idea where to go from here.
Hi,
I could not make a ticket unassigned. When creating a ticket, it is assigned to the creator by default.
I imagine a fake name passed to --user
would work. But I wonder whether it is the expected pattern or if the feature is currently missing.
A small hint in the doc would be nice.
Gitolite [1] is a freaking cool software. Ticgit [2] looks promising sofware. Gource [3] looks promising.
Now I feel it is extremely important that we create some sort of consistency with the design. Permissions and tickets usually belong to manager -level guy or some central guy.
Related projects
[1] https://github.com/sitaramc/gitolite/
[2] https://github.com/jeffWelling/ticgit
[3] http://code.google.com/p/gource/
Related Tickets
[4] #52
I am puzzled how they are managed. I would kill all ticgitweb --things for now, there is too many bugs with ticgit!
I. ticgit --- PRIORITY ONE
II. ticgitweb --- some sinatra -hack (I think this should be anyway rewritten with something like CouchDB, forget)
It is relatively easy to fix the bugs such as [1] when we get the I working! Do not waste time with [1], please.
[1] #48 (comment)
When running ti
while not in a git repository, TicGit throws nasty errors about 'puts' not existing on the Nil class.
This kind of error spewing should not happen, TicGit should inform the user in a nice way that they should cd
to a git repository before trying to use ti
.
ticgit / lib / ticgit-ng / command.rb
line 12: "Assigns" (g before n)
obviously not an issue, but i'm not a programmer (just user) and this is the best i could do to help... please delete this message.
best of luck.
Suggestions:
I. CURRENTLY
$ ti list
TicId Title State Date Assgn Tags
...suggestion below...
II. BITBUCKET.org -style
$ ti list
Title ? ! State Responsible Component Milestone Date created
...because I cannot know every want, I suggest to make the options configurable so that providers such as Bitbucket, Github, etc could add their own modes themselves or some fan.
Reposted as an issue on behalf of frioux who PM'd me to confirm this was a bug.
This is how I run ti:
alias ti='ruby -I~/code/ticgit/lib ~/code/ticgit/bin/ti'
In 1.0.2.6 it works perfectly, but in 1.0.2.7 and forward I now get the following error when I just run plain ti:
/usr/lib/ruby/1.8/git/lib.rb:643:in command': git log --pretty=raw -1 ticgit 2>&1:fatal: ambiguous argument 'ticgit': unknown revision or path not in the working tree. (Git::GitExecuteError)
Use '--' to separate paths from revisions
from /usr/lib/ruby/1.8/git/lib.rb:615:incommand_lines'
from /usr/lib/ruby/1.8/git/lib.rb:91:in full_log_commits'
from /usr/lib/ruby/1.8/git/log.rb:106:inrun_log'
from /usr/lib/ruby/1.8/git/log.rb:99:in check_log'
from /usr/lib/ruby/1.8/git/log.rb:80:ineach'
from /home/frew/code/ticgit/lib/ticgit-ng/base.rb:27:in map'
from /home/frew/code/ticgit/lib/ticgit-ng/base.rb:27:ininitialize'
from /home/frew/code/ticgit/lib/ticgit-ng.rb:46:in new'
from /home/frew/code/ticgit/lib/ticgit-ng.rb:46:inopen'
from /home/frew/code/ticgit/lib/ticgit-ng/cli.rb:24:in initialize'
from /home/frew/code/ticgit/lib/ticgit-ng/cli.rb:14:innew'
from /home/frew/code/ticgit/lib/ticgit-ng/cli.rb:14:in parse'
from /home/frew/code/ticgit/lib/ticgit-ng/cli.rb:9:inexecute'
from /home/frew/code/ticgit/bin/ti:13
ok, actually, it just seems like ti can't create a new ticgit branch anymore. Existing ti branches seem to work fine... Trying to see when that came in now...
Bisected the error to this commit: 9dcde19
Hi,
I'm using ti on debian 6 with the locale LANG=de_DE@euro. In this setting "ti list" prints, when the text in the respective column is to long instead of the ... literal some funny characters. I've located the problem in lib / ticgit-ng / cli.rb. in line 205 and 217 (because you use probably some utf8 setting):
sub_value = "#{value[0, size - 1]}\xe2\x80\xa6"
My workaround is to use the middle dot \xb7 instead of \xe2\x80\xa6:
sub_value = "#{chars[0, size-1]}\xb7"
But I think that this should be done automatically.
Sync with Github Issues! That would be the shiznizzle!!!
Also, other bug trackers, but they can wait because they taste like cheeze and cardboard.
/jk about the cardboard-y cheesy taste ;)
Do you use another bug tracker that you would like to see TicGit-ng synchronize with? Start hacking! Or, if your not a developer, post a comment here with the bug tracker you would like to be able to synchronize with, and we'll light some candles and wave our magic programming stick and see what happens. :)
This is a test issue created from octokit.
PLEASE MAKE THIS MILESTONE, thank you.
I don't actually care how to design ticgit but I personally like the Gitolite -way of doing things. Ofc ticgit is a bit different -story -- if we create always separate branches, we move the problem forward about management. I think much better way is to create design consistency somehow, perhaps by looking how Gitolite manages things.
Related tickets or related
[1] #56
[2] #52
[3] there are even Git -projects based on DB such as MongoDB-blog/etc -- a lot of people tinkering...
Should be able to sort tickets somehow, preferably with drag and drop but this won't be possible in a terminal window, maybe ticgitweb.
$ ti attach
/var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/command.rb:29:in const_get': no such file to load -- ticgit-ng/command/attach (LoadError) from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/command.rb:29:in
get'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:45:in execute!' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:9:in
execute'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/bin/ti:13
from /usr/local/bin/ti:19:in `load'
from /usr/local/bin/ti:19
TicGit-ng has a cache corruption issue, documented here
The reason it's in a wiki page is because the symptoms have disappeared and re-appeared over time, but now I know exactly what the problem is, the state file and manual interactions with the ticgit branch. The wiki page simply precedes this github issue.
After installing ticgit-ng as per the readme and being able to run ti successfully I am unable to run the web interface:
$ ticgitweb
You need to install ticgit before we can proceed
/var/lib/gems/1.8/gems/TicGit-ng-1.0.2.2/bin/ticgitweb:27: uninitialized constant TicGit (NameError)
Bug tracking in git on your local machine is awesome, but if I'm working on a feature with someone else, or am trying to resolve a bug with someone else, I will want to stay up to date with comments they make on the bug, feature, etc.
Some command that will sync continuously for some period of time such as until x or for y min/sec/hours/...
Maybe it could start a daemon that synced every 15 seconds...
I think we should keep track of who created the ticket when it is created. This could be difficult for tickets created via the web interface, and for tickets created on the command line when we don't have knowledge of any identity.
Maybe issue a notice about how best practice is to include an email if one isn't provided.
Tested on 12.04 Ubuntu. It seems to lack error handling with Null -repo.
$ cat /proc/version
Linux version 3.2.0-26-generic (buildd@batsu) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) ) #41-Ubuntu SMP Thu Jun 14 17:49:24 UTC 2012
$ ti new -t 'testing1'
/var/lib/gems/1.8/gems/git-1.2.5/lib/git/lib.rb:700:in command': git branch "-a" 2>&1:fatal: Failed to resolve HEAD as a valid ref. (Git::GitExecuteError) from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/lib.rb:672:in
command_lines'
from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/lib.rb:200:in branches_all' from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/branches.rb:12:in
initialize'
from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/base.rb:180:in new' from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/base.rb:180:in
branches'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/base.rb:414:in which_branch?' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/base.rb:32:in
initialize'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng.rb:50:in new' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng.rb:50:in
open'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:34:in initialize' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:14:in
new'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:14:in parse' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:9:in
execute'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/bin/ti:13
from /usr/local/bin/ti:19:in load' from /usr/local/bin/ti:19 xyz@xyz:~/T$ ti new --help /var/lib/gems/1.8/gems/git-1.2.5/lib/git/lib.rb:700:in
command': git branch "-a" 2>&1:fatal: Failed to resolve HEAD as a valid ref. (Git::GitExecuteError)
from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/lib.rb:672:in command_lines' from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/lib.rb:200:in
branches_all'
from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/branches.rb:12:in initialize' from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/base.rb:180:in
new'
from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/base.rb:180:in branches' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/base.rb:414:in
which_branch?'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/base.rb:32:in initialize' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng.rb:50:in
new'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng.rb:50:in open' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:34:in
initialize'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:14:in new' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:14:in
parse'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:9:in execute' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/bin/ti:13 from /usr/local/bin/ti:19:in
load'
from /usr/local/bin/ti:19
xyz@xyz:/T$ ti --help/T$ ti
/var/lib/gems/1.8/gems/git-1.2.5/lib/git/lib.rb:700:in command': git branch "-a" 2>&1:fatal: Failed to resolve HEAD as a valid ref. (Git::GitExecuteError) from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/lib.rb:672:in
command_lines'
from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/lib.rb:200:in branches_all' from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/branches.rb:12:in
initialize'
from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/base.rb:180:in new' from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/base.rb:180:in
branches'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/base.rb:414:in which_branch?' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/base.rb:32:in
initialize'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng.rb:50:in new' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng.rb:50:in
open'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:34:in initialize' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:14:in
new'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:14:in parse' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:9:in
execute'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/bin/ti:13
from /usr/local/bin/ti:19:in load' from /usr/local/bin/ti:19 xyz@xyz:~/T$ ti --help /var/lib/gems/1.8/gems/git-1.2.5/lib/git/lib.rb:700:in
command': git branch "-a" 2>&1:fatal: Failed to resolve HEAD as a valid ref. (Git::GitExecuteError)
from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/lib.rb:672:in command_lines' from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/lib.rb:200:in
branches_all'
from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/branches.rb:12:in initialize' from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/base.rb:180:in
new'
from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/base.rb:180:in branches' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/base.rb:414:in
which_branch?'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/base.rb:32:in initialize' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng.rb:50:in
new'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng.rb:50:in open' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:34:in
initialize'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:14:in new' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:14:in
parse'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:9:in execute' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/bin/ti:13 from /usr/local/bin/ti:19:in
load'
from /usr/local/bin/ti:19
xyz@xyz:
/var/lib/gems/1.8/gems/git-1.2.5/lib/git/lib.rb:700:in command': git branch "-a" 2>&1:fatal: Failed to resolve HEAD as a valid ref. (Git::GitExecuteError) from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/lib.rb:672:in
command_lines'
from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/lib.rb:200:in branches_all' from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/branches.rb:12:in
initialize'
from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/base.rb:180:in new' from /var/lib/gems/1.8/gems/git-1.2.5/lib/git/base.rb:180:in
branches'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/base.rb:414:in which_branch?' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/base.rb:32:in
initialize'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng.rb:50:in new' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng.rb:50:in
open'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:34:in initialize' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:14:in
new'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:14:in parse' from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/lib/ticgit-ng/cli.rb:9:in
execute'
from /var/lib/gems/1.8/gems/TicGit-ng-1.0.2.14/bin/ti:13
from /usr/local/bin/ti:19:in `load'
from /usr/local/bin/ti:19
On Ubuntu 10.10 64Bit
$sudo apt-get install git ruby rubygems
$sudo gem install git
$sudo gem install TicGit-ng
$ ti
The program 'ti' is currently not installed. You can install it by typing:
sudo apt-get install ticgit
Humbug!
$locate bin/ti
/home/jeff/Projects/ticgit/bin/ti
/home/jeff/Projects/ticgit/bin/ticgitweb
/usr/bin/tic
/usr/bin/time
/usr/bin/time-admin
/usr/bin/timeout
/usr/lib/erlang/lib/stdlib-1.16.4/ebin/timer.beam
/var/lib/gems/1.8/bin/ti
/var/lib/gems/1.8/bin/ticgitweb
/var/lib/gems/1.8/gems/TicGit-ng-1.0.2.2/bin/ti
/var/lib/gems/1.8/gems/TicGit-ng-1.0.2.2/bin/ticgitweb
Edit: For some stupid reason, Markdown requires two spaces in order to properly interpret a newline, grrr...
Currently, ti sync
is painfully slow because it attempts a git fetch $repo
before performing the git pull and git push. The fetch should only be performed if there is no 'ticgit' or 'ticgit-ng' branch in $repo as we currently have it. This will prevent superfluous slowdowns but will still perform the fetch if we aren't aware of a branch we can use yet.
Copied from https://github.com/schacon/ticgit/issues/#issue/3
Nobody (including me) expects a new branch to be created by simply typing ti. The standard is to use an init command. A very wide-spread convention in the ruby/git community. So it would be better to show some little hint or the command list instead.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.