sodapopcan / vim-twiggy

Git branch management for Vim
280 stars 15 forks source link

Fugitive update causes breaking change #44

Closed maujim closed 3 years ago

maujim commented 3 years ago

As of this commit https://github.com/tpope/vim-fugitive/commit/aae36024b89e34db0280b5361633fb036b17951f, fugitive#repo().git_command(...) has been replaced by FugitiveShellCommand(...). This breaks the :Twiggy command.

I tried replacing all occurrences of the former with the latter but :Twiggy just states "Not a git repository". I'm currently unable to look into this further.

sodapopcan commented 3 years ago

Thanks for the report. I'll look into this soon. Does it say "Not a git repository" even when you're editing a file?

maujim commented 3 years ago

This is the output after opening autoload/twiggy.vim and running :Twiggy

Error detected while processing function twiggy#Branch[14]..<SNR>184_Render[43]..<SNR>184_no_commits[1]..<SNR>184_g
it_cmd[1]..<SNR>184_gitize:
line    7:
E684: list index out of range: 1
E116: Invalid arguments for function s:sub
E15: Invalid expression: "--work-tree=".s:sub(split(parts[1], "=")[1], '\v/.git$', "/")

After this, the side panel does open, but its empty

sodapopcan commented 3 years ago

Thank you! Will look at this later this evening.

mckellygit commented 3 years ago

I did something like this -

+    "let t:twiggy_git_cmd = fugitive#repo().git_command()
+    let t:twiggy_git_cmd = "git --git-dir=" . b:git_dir . " "

I think the fugitive change is that fugitive#repo().git_command() is replaced with FugitiveShellCommand() so I suppose the fix should use that instead.

sodapopcan commented 3 years ago

Sorry for the delay here, I didn't realize how broken this was but had a lot of stuff going on the past few days.

So long as you are editing a file in the repo, you should not see the "not a git repository" error. There is an already open issue about this: #30.