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

[tig PATCH] Predefined external command: git commit

From
Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
Date
Feb 21, 2009, 00:28 UTC
Message-ID
<1235176121-17483-1-git-send-email-giuseppe.bilotta@gmail.com>

Status view allows management of the stage area, and the user is likely to issue a commit as soon as (s)he's satisfied with the result. Mapping 'git commit' to the 'C' key in status view makes this straightforward and allows a very streamlined workflow from within git.

Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
---

It might make sense to map 'A' to 'git commit --amend', too, even though that key is currently taken by author display toggle.

 manual.txt |    9 +++++----
 tig.c      |    2 ++
 2 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/manual.txt b/manual.txt
index 74fa3f8..104989f 100644
--- a/manual.txt
+++ b/manual.txt
@@ -449,11 +449,12 @@ a script or program. They are bound to keys and use information from the
 current browsing state, such as the current commit ID. Tig comes with
 the following built-in external commands:
 
-`-------`--------------------------------------------------------------------
-Key	Action
+`-------`-------`------------------------------------------------------------
+Keymap	Key	Action
 -----------------------------------------------------------------------------
-C	git cherry-pick %(commit)
-G	git gc
+MAIN	C	git cherry-pick %(commit)
+STATUS	C	git commit
+GENERIC	G	git gc
 -----------------------------------------------------------------------------
 
 [[refspec]]
diff --git a/tig.c b/tig.c
index 9349f69..c22f271 100644
--- a/tig.c
+++ b/tig.c
@@ -1365,6 +1365,7 @@ static void
 add_builtin_run_requests(void)
 {
 	const char *cherry_pick[] = { "git", "cherry-pick", "%(commit)", NULL };
+	const char *commit[] = { "git", "commit", NULL };
 	const char *gc[] = { "git", "gc", NULL };
 	struct {
 		enum keymap keymap;
@@ -1373,6 +1374,7 @@ add_builtin_run_requests(void)
 		const char **argv;
 	} reqs[] = {
 		{ KEYMAP_MAIN,	  'C', ARRAY_SIZE(cherry_pick) - 1, cherry_pick },
+		{ KEYMAP_STATUS,  'C', ARRAY_SIZE(commit) - 1, commit },
 		{ KEYMAP_GENERIC, 'G', ARRAY_SIZE(gc) - 1, gc },
 	};
 	int i;
-- 
1.6.2.rc1.258.g1d592.dirty
Next: Jonas Fonseca
Message 1 of 5 in “Predefined external command: git commit”
  1. Predefined external command: git commitGiuseppe Bilotta, Feb 21, 2009
  2. Jonas FonsecaFeb 21, 2009
  3. Giuseppe BilottaFeb 21, 2009
  4. Jonas FonsecaFeb 21, 2009
  5. Giuseppe BilottaFeb 21, 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.