aboutsummaryrefslogtreecommitdiff
path: root/Documentation
diff options
context:
space:
mode:
authorMatthew Ogilvie <mmogilvi_git@miniinfo.net>2008-05-14 22:35:48 -0600
committerJunio C Hamano <gitster@pobox.com>2008-05-16 12:05:35 -0700
commit90948a42892779734f77d62f20326c868392fd8f (patch)
tree88b485c2b84e9419faac5e20725069c43f993a74 /Documentation
parent8a06a632976ead891115ad9ac9dea7b99c52158e (diff)
downloadgit-90948a42892779734f77d62f20326c868392fd8f.tar.gz
git-90948a42892779734f77d62f20326c868392fd8f.tar.xz
git-cvsserver: add ability to guess -kb from contents
If "gitcvs.allbinary" is set to "guess", then any file that has not been explicitly marked as binary or text using the "crlf" attribute and the "gitcvs.usecrlfattr" config will guess binary based on the contents of the file. Signed-off-by: Matthew Ogilvie <mmogilvi_git@miniinfo.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/config.txt13
-rw-r--r--Documentation/git-cvsserver.txt14
2 files changed, 18 insertions, 9 deletions
diff --git a/Documentation/config.txt b/Documentation/config.txt
index 036e61e2f..917ef5b4f 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -670,11 +670,14 @@ gitcvs.usecrlfattr
then 'gitcvs.allbinary' is used. See linkgit:gitattribute[5].
gitcvs.allbinary::
- If true, all files not otherwise specified using
- 'gitcvs.usecrlfattr' and an explicitly set or unset `crlf`
- attribute are sent to the client in mode '-kb'. This
- causes the client to treat them as binary files which
- suppresses any newline munging it otherwise might do.
+ This is used if 'gitcvs.usecrlfattr' does not resolve
+ the correct '-kb' mode to use. If true, all
+ unresolved files are sent to the client in
+ mode '-kb'. This causes the client to treat them
+ as binary files, which suppresses any newline munging it
+ otherwise might do. Alternatively, if it is set to "guess",
+ then the contents of the file are examined to decide if
+ it is binary, similar to 'core.autocrlf'.
gitcvs.dbname::
Database used by git-cvsserver to cache revision information
diff --git a/Documentation/git-cvsserver.txt b/Documentation/git-cvsserver.txt
index 4888b8604..cd0685ea6 100644
--- a/Documentation/git-cvsserver.txt
+++ b/Documentation/git-cvsserver.txt
@@ -311,17 +311,23 @@ to crlf conversion on some platforms.
You can make the server use `crlf` attributes to set the '-k' modes
for files by setting the `gitcvs.usecrlfattr` config variable.
In this case, if `crlf` is explicitly unset ('-crlf'), then the
-will set '-kb' mode, for binary files. If it `crlf` is set,
+server will set '-kb' mode for binary files. If `crlf` is set,
then the '-k' mode will explicitly be left blank. See
also linkgit:gitattributes[5] for more information about the `crlf`
attribute.
Alternatively, if `gitcvs.usecrlfattr` config is not enabled
or if the `crlf` attribute is unspecified for a filename, then
-the server uses the `gitcvs.allbinary` for the default setting.
-If `gitcvs.allbinary` is set, then the files not otherwise
+the server uses the `gitcvs.allbinary` config for the default setting.
+If `gitcvs.allbinary` is set, then file not otherwise
specified will default to '-kb' mode. Otherwise the '-k' mode
-is left blank.
+is left blank. But if `gitcvs.allbinary` is set to "guess", then
+the correct '-k' mode will be guessed based on the contents of
+the file.
+
+For best consistency with cvs, it is probably best to override the
+defaults by setting `gitcvs.usecrlfattr` to true,
+and `gitcvs.allbinary` to "guess".
Dependencies
------------