Web lists-archives.com

Re: [PATCH 2/2] gitk: add an option to run gitk on an item in the file list




On Tue, May 8, 2018 at 3:39 PM, Alex Riesen
<alexander.riesen@xxxxxxxxxxx> wrote:
> Bert Wesarg, Tue, May 08, 2018 15:17:03 +0200:
>> On Tue, May 8, 2018 at 2:22 PM, Alex Riesen <alexander.riesen@xxxxxxxxxxx> wrote:
>> > +proc flist_gitk {} {
>> > +    global flist_menu_file findstring gdttype
>> > +
>> > +    set x [shellquote $flist_menu_file]
>>
>> this needs to handle cdup, i.e., if gitk is run from a subdirectory,
>> all paths needs to be prefixed with $cdup, like: [file join $cdup
>> $flist_menu_file]
>
> That, indeed, is easily done:
>
>     set x [shellquote [file join $cdup $flist_menu_file]]
>     if {[file isdirectory $flist_menu_file]} {
>         exec sh -c "cd $x&&gitk" &
>     } else {
>         exec gitk -- $x &
>     }
>
>
> It just doesn't seem to work: gitk does not find any commits!
> Maybe that's because the file panel lists only files for the current
> subdirectory (without the path from the repo top-level)? E.g.
>
>     mkdir tst
>     cd tst
>     git init
>     mkdir a
>     touch top-file a/sub-file
>     git add -A ; git commit -m.
>     cd a
>     gitk
>
> Gitk lists only sub-file.
>
> Frankly, this listing limited to just a sub-directory confuses me a bit. Is
> there anyway to get to display full repository without changing to the top
> level?

I noticed that too, while testing your patch and I'm also confused.
But was not able to send a request to Paul yet. ls-tree --full-tree
seems to be one that should be used here, I think.

Bert