Search code examples
git

gitk gives "argument list too long" error


I always got the "argument list too long" error when I try to use "gitk" to open the GUI of the history for some large repo. Even using "gitk -n" didn't solve the problem. Does anybody here have same issue? Thanks,

couldn't execute "git": argument list too long
couldn't execute "git": argument list too long
    while executing
"open [concat $cmd $ids] r"
    (procedure "getallcommits" line 47)
    invoked from within
"getallcommits"
    (procedure "readcache" line 80)
    invoked from within
"readcache file13"
    ("eval" body line 1)
    invoked from within
"eval $script"
    (procedure "dorunq" line 11)
    invoked from within
"dorunq"
    ("after" script)

Solution

  • "Argument list too long" is a kernel error when you pass in too many arguments on a command line.

    Probably your repo contains something which causes $ids (I'm purely speculating here) to exceed the ARG_MAX limit of your platform.

    This is basically a bug in Gitk, but if you can figure out which resource is causing this, you can probably work around the problem by limiting or pruning it somehow.