Browse Source

Make AutoCRLF ternary variable.

This allows you to do:

	[core]
		AutoCRLF = input

and it should do only the CRLF->LF translation (ie it simplifies CRLF only
when reading working tree files, but when checking out files, it leaves
the LF alone, and doesn't turn it into a CRLF).

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
maint
Linus Torvalds 18 years ago committed by Junio C Hamano
parent
commit
d7f4633405
  1. 4
      config.c
  2. 2
      convert.c
  3. 2
      environment.c

4
config.c

@ -325,6 +325,10 @@ int git_default_config(const char *var, const char *value) @@ -325,6 +325,10 @@ int git_default_config(const char *var, const char *value)
}

if (!strcmp(var, "core.autocrlf")) {
if (value && !strcasecmp(value, "input")) {
auto_crlf = -1;
return 0;
}
auto_crlf = git_config_bool(var, value);
return 0;
}

2
convert.c

@ -140,7 +140,7 @@ int convert_to_working_tree(const char *path, char **bufp, unsigned long *sizep) @@ -140,7 +140,7 @@ int convert_to_working_tree(const char *path, char **bufp, unsigned long *sizep)
* based on filename patterns. Right now we just do the
* stupid auto-CRLF one.
*/
if (!auto_crlf)
if (auto_crlf <= 0)
return 0;

size = *sizep;

2
environment.c

@ -28,7 +28,7 @@ size_t packed_git_window_size = DEFAULT_PACKED_GIT_WINDOW_SIZE; @@ -28,7 +28,7 @@ size_t packed_git_window_size = DEFAULT_PACKED_GIT_WINDOW_SIZE;
size_t packed_git_limit = DEFAULT_PACKED_GIT_LIMIT;
int pager_in_use;
int pager_use_color = 1;
int auto_crlf = 0;
int auto_crlf = 0; /* 1: both ways, -1: only when adding git objects */

static const char *git_dir;
static char *git_object_dir, *git_index_file, *git_refs_dir, *git_graft_file;

Loading…
Cancel
Save