feat(pickers): add opt.show_remote_tracking_branches to git_branches (#2314)

This commit is contained in:
Matt Taylor
2023-01-11 06:00:44 -08:00
committed by GitHub
parent e8c01bab91
commit 1ba7278cf0
3 changed files with 18 additions and 5 deletions

View File

@@ -1028,10 +1028,17 @@ builtin.git_branches({opts}) *telescope.builtin.git_branches()*
{opts} (table) options to pass to the picker
Options: ~
{cwd} (string) specify the path of the repo
{use_git_root} (boolean) if we should use git root as cwd or the cwd
(important for submodule) (default: true)
{pattern} (string) specify the pattern to match all refs
{cwd} (string) specify the path of the
repo
{use_git_root} (boolean) if we should use git root
as cwd or the cwd
(important for submodule)
(default: true)
{show_remote_tracking_branches} (boolean) show remote tracking
branches like origin/main
(default: true)
{pattern} (string) specify the pattern to
match all refs
builtin.git_status({opts}) *telescope.builtin.git_status()*

View File

@@ -203,6 +203,7 @@ git.branches = function(opts)
{ "git", "for-each-ref", "--perl", "--format", format, "--sort", "-authordate", opts.pattern },
opts.cwd
)
local show_remote_tracking_branches = vim.F.if_nil(opts.show_remote_tracking_branches, true)
local results = {}
local widths = {
@@ -225,7 +226,11 @@ git.branches = function(opts)
}
local prefix
if vim.startswith(entry.refname, "refs/remotes/") then
if show_remote_tracking_branches then
prefix = "refs/remotes/"
else
return
end
elseif vim.startswith(entry.refname, "refs/heads/") then
prefix = "refs/heads/"
else

View File

@@ -172,6 +172,7 @@ builtin.git_bcommits = require_on_exported_call("telescope.builtin.__git").bcomm
---@param opts table: options to pass to the picker
---@field cwd string: specify the path of the repo
---@field use_git_root boolean: if we should use git root as cwd or the cwd (important for submodule) (default: true)
---@field show_remote_tracking_branches boolean: show remote tracking branches like origin/main (default: true)
---@field pattern string: specify the pattern to match all refs
builtin.git_branches = require_on_exported_call("telescope.builtin.__git").branches