git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 3/3] completion: use specified file (if any) when completing config vars

From
Stephen Boyd <bebarino@gmail.com>
Date
May 7, 2009, 06:18 UTC
Message-ID
<1241677093-29937-2-git-send-email-bebarino@gmail.com>
In-Reply-To
<1241677093-29937-1-git-send-email-bebarino@gmail.com>

Only list the variables that can actually be affected by the command by searching the arguments for a config file setting.

Signed-off-by: Stephen Boyd <bebarino@gmail.com>
---
 contrib/completion/git-completion.bash |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash
index f179cc8..8a9863b 100755
--- a/contrib/completion/git-completion.bash
+++ b/contrib/completion/git-completion.bash
@@ -1349,7 +1349,10 @@ _git_send_email ()
 
 __git_config_get_set_variables ()
 {
-	for i in $(git --git-dir="$(__gitdir)" config --list); do
+	local args="--global --system --file= -f"
+	local config_file="$(__git_find_argument_and_value "$args")"
+	for i in $(git --git-dir="$(__gitdir)" config $config_file --list \
+			2>/dev/null); do
 		case "$i" in
 		*.*)
 			echo "${i/=*/}"
-- 
1.6.3.rc4.29.g8146
Previous: Stephen BoydNext: Shawn O. Pearce
Message 4 of 7 in “completion: complete config variables for --get/getall/unset/unset-all”
  1. 1/3 completion: complete config variables for --get/getall/unset/unset-allStephen Boyd, May 7, 2009
  2. 2/3 completion: add find_argument_and_value() functionStephen Boyd, May 7, 2009
  3. 2/3 completion: add find_argument_and_value() functionStephen Boyd, May 7, 2009
  4. 3/3 completion: use specified file (if any) when completing config varsStephen Boyd, May 7, 2009
  5. Shawn O. PearceMay 7, 2009
  6. Stephen BoydMay 7, 2009
  7. Stephen BoydMay 9, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.