diff options
author | Paul Mackerras <paulus@samba.org> | 2005-06-21 10:20:04 +1000 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2005-06-21 10:20:04 +1000 |
commit | 2efef4b9b5e65b436eff3b481edc273204453c72 (patch) | |
tree | 1b1397489cad6ce3cc958d626bbee591fdf26cd5 | |
parent | a823a91131616c28f9c3ef5601b09b7e01393204 (diff) | |
download | git-2efef4b9b5e65b436eff3b481edc273204453c72.tar.gz git-2efef4b9b5e65b436eff3b481edc273204453c72.tar.xz |
Pass arguments through git-rev-parse.
This allows the user to specify ranges more flexibly; for instance
the user can now do "gitk v2.6.12.." and see all the changes since
2.6.12.
-rwxr-xr-x | gitk | 16 |
1 files changed, 12 insertions, 4 deletions
@@ -14,14 +14,22 @@ proc getcommits {rargs} { global startmsecs nextupdate global ctext maincursor textcursor nlines - if {$rargs == {}} { - set rargs HEAD - } set commits {} set phase getcommits set startmsecs [clock clicks -milliseconds] set nextupdate [expr $startmsecs + 100] - if [catch {set commfd [open "|git-rev-list --merge-order $rargs" r]} err] { + if [catch { + set parse_args [concat --default HEAD --merge-order $rargs] + set parsed_args [split [eval exec git-rev-parse $parse_args] "\n"] + }] { + if {$rargs == {}} { + set rargs HEAD + } + set parsed_args [concat --merge-order $rargs] + } + if [catch { + set commfd [open "|git-rev-list $parsed_args" r] + } err] { puts stderr "Error executing git-rev-list: $err" exit 1 } |