From: Junio C Hamano Date: Sun, 25 Jun 2006 11:50:48 GMT Subject: Re: [RFC] git --trace: trace command execution Message-ID: <7v3bdtv4h3.fsf@assigned-by-dhcp.cox.net> In-Reply-To: Matthias Lederhofer writes: > Show parameters to execve/builtin-cmds before executing them. This > version does not yet have a parameter --trace to git to enable this I > just want to get feedback first :) > > I think this is quite useful to debug what is going on since a command > may be another program (shell/python/perl/.. script etc) or just an > alias for a internal command. Before that many commands became > built-ins this was quite easy to do with strace. Interesting. Debugging one's alias entries would be helped with this I would imagine, and for that you would want something like this: > Example: > % git showtag v1.4.1-rc1 > /dev/null > trace: exec: /home/matled/local/stow/git/bin/git-showtag v1.4.1-rc1 > trace: exec failed: No such file or directory * trace: expanded alias "showtag" => "cat-file tag" > trace: built-in command: git cat-file tag v1.4.1-rc1 By the way "git cat-file -p" or "git verify-tag -v" might be more pleasant to view a tag since they make the tagger timestamp human readable. > print_shell_escape will escape the arguments to be used as strings in > the shell to prevent ambiguity with spaces and other special > characters and make them copy-and-pastable. Might be worth reusing quote.c::sq_quote(), perhaps?