On Fri, Nov 30, 2007 at 07:50:47AM -0800, Linus Torvalds wrote: > Well, different people will want different viewers *anyway* (ie some will > prefer qgit etc), so how about making "git view" be something that > literally acts as a built-in alias that just defaults to running gitk (if > for no other reason than the fact that gitk is the one that ships with > git, and simply has most users). I think that is a good idea, and here's a patch. -- >8 -- Support builtin aliases Builtin aliases are "default" alias values that can be overridden by user-configured aliases. For example, the first such alias is "view", an alias for gitk. A user with no further configuration can run "git view" to use gitk. However, they can also set the config option "alias.view" to "!tig" to run tig. --- git.c | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-) diff --git a/git.c b/git.c index f220284..95296aa 100644 --- a/git.c +++ b/git.c @@ -151,6 +151,13 @@ static int split_cmdline(char *cmdline, const char ***argv) return count; } +static char *builtin_alias(const char *cmd) +{ + if (!strcmp(cmd, "view")) + return xstrdup("!gitk"); + return NULL; +} + static int handle_alias(int *argcp, const char ***argv) { int nongit = 0, envchanged = 0, ret = 0, saved_errno = errno; @@ -162,6 +169,8 @@ static int handle_alias(int *argcp, const char ***argv) alias_command = (*argv)[0]; git_config(git_alias_config); + if (!alias_string) + alias_string = builtin_alias(alias_command); if (alias_string) { if (alias_string[0] == '!') { if (*argcp > 1) { -- 1.5.3.6.2064.g2e22f-dirty - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html