diff options
author | Junio C Hamano <junkio@cox.net> | 2006-07-08 01:05:16 -0700 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2006-07-08 03:11:01 -0700 |
commit | 83ad63cfebdf652ff7c7b255d700d8b12c756913 (patch) | |
tree | d23227484e77cc05bd534675554279f174cf7642 /diff.c | |
parent | b53766483ff14f73be954617349b18ea56c3187a (diff) | |
download | git-83ad63cfebdf652ff7c7b255d700d8b12c756913.tar.gz git-83ad63cfebdf652ff7c7b255d700d8b12c756913.tar.xz |
diff: do not use configuration magic at the core-level
The Porcelainish has become so much usable as the UI that there
is not much reason people should be using the core programs by
hand anymore. At this point we are better off making the
behaviour of the core programs predictable by keeping them
unaffected by the configuration variables. Otherwise they will
become very hard to use as reliable building blocks.
For example, "git-commit -a" internally uses git-diff-files to
figure out the set of paths that need to be updated in the
index, and we should never allow diff.renames that happens to be
in the configuration to interfere (or slow down the process).
The UI level configuration such as showing renamed diff and
coloring are still honored by the Porcelainish ("git log" family
and "git diff"), but not by the core anymore.
Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'diff.c')
-rw-r--r-- | diff.c | 8 |
1 files changed, 7 insertions, 1 deletions
@@ -102,7 +102,13 @@ static const char *parse_diff_color_value(const char *value, const char *var) die("bad config value '%s' for variable '%s'", value, var); } -int git_diff_config(const char *var, const char *value) +/* + * These are to give UI layer defaults. + * The core-level commands such as git-diff-files should + * never be affected by the setting of diff.renames + * the user happens to have in the configuration file. + */ +int git_diff_ui_config(const char *var, const char *value) { if (!strcmp(var, "diff.renamelimit")) { diff_rename_limit_default = git_config_int(var, value); |