Merge pull request #277 from pockata/faster-branch-name

Use fugitive for faster branch name resolution
This commit is contained in:
ThePrimeagen 2023-05-10 06:43:03 -06:00 committed by GitHub
commit 3476228be2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -11,14 +11,25 @@ function M.project_key()
end
function M.branch_key()
-- `git branch --show-current` requires Git v2.22.0+ so going with more
-- widely available command
local branch = M.get_os_command_output({
"git",
"rev-parse",
"--abbrev-ref",
"HEAD",
})[1]
local branch
-- use tpope's fugitive for faster branch name resolution if available
if vim.fn.exists("*FugitiveHead") == 1 then
branch = vim.fn["FugitiveHead"]()
-- return "HEAD" for parity with `git rev-parse` in detached head state
if #branch == 0 then
branch = "HEAD"
end
else
-- `git branch --show-current` requires Git v2.22.0+ so going with more
-- widely available command
branch = M.get_os_command_output({
"git",
"rev-parse",
"--abbrev-ref",
"HEAD",
})[1]
end
if branch then
return vim.loop.cwd() .. "-" .. branch