Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.kernel.org/pub/scm/git/git.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <junkio@cox.net>2006-12-31 09:42:43 +0300
committerJunio C Hamano <junkio@cox.net>2006-12-31 09:42:43 +0300
commit76d4e079adba461c127641a1104772a62e38cd81 (patch)
tree7a8e335ed577aff47b5a80d8de5a6d7904813c02 /Documentation
parent2c039da804ee0542ff41d2f22a444d04a2d37856 (diff)
parenta862f97e98decc317437fa3b04081f68fb4ffbf3 (diff)
Merge branch 'master' into sp/mmap
* master: Documentation/config.txt (and repo-config manpage): mark-up fix. Teach Git how to parse standard power of 2 suffixes. Use /dev/null for update hook stdin. Redirect update hook stdout to stderr. Remove unnecessary argc parameter from run_command_v. Automatically detect a bare git repository. Replace "GIT_DIR" with GIT_DIR_ENVIRONMENT. Use PATH_MAX constant for --bare. Force core.filemode to false on Cygwin. Fix formatting for urls section of fetch, pull, and push manpages Fix yet another subtle xdl_merge() bug i18n: drop "encoding" header in the output after re-coding. commit-tree: cope with different ways "utf-8" can be spelled. Move commit reencoding parameter parsing to revision.c Documentation: minor rewording for git-log and git-show pages. Documentation: i18n commit log message notes. t3900: test log --encoding=none commit re-encoding: fix confusion between no and default conversion.
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/config.txt14
-rw-r--r--Documentation/git-commit-tree.txt5
-rw-r--r--Documentation/git-commit.txt5
-rw-r--r--Documentation/git-log.txt10
-rw-r--r--Documentation/git-repo-config.txt5
-rw-r--r--Documentation/git-rev-list.txt1
-rw-r--r--Documentation/git-show.txt15
-rw-r--r--Documentation/i18n.txt57
-rw-r--r--Documentation/pretty-formats.txt7
-rw-r--r--Documentation/urls.txt23
10 files changed, 122 insertions, 20 deletions
diff --git a/Documentation/config.txt b/Documentation/config.txt
index d71653dc65..744484b982 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -82,13 +82,13 @@ core.logAllRefUpdates::
only when the file exists. If this configuration
variable is set to true, missing "$GIT_DIR/logs/<ref>"
file is automatically created for branch heads.
-
- This information can be used to determine what commit
- was the tip of a branch "2 days ago".
-
- This value is true by default in a repository that has
- a working directory associated with it, and false by
- default in a bare repository.
++
+This information can be used to determine what commit
+was the tip of a branch "2 days ago".
++
+This value is true by default in a repository that has
+a working directory associated with it, and false by
+default in a bare repository.
core.repositoryFormatVersion::
Internal variable identifying the repository format and layout
diff --git a/Documentation/git-commit-tree.txt b/Documentation/git-commit-tree.txt
index 41d1a1c4b3..77ba96ed8a 100644
--- a/Documentation/git-commit-tree.txt
+++ b/Documentation/git-commit-tree.txt
@@ -81,6 +81,11 @@ Your parents must have hated you!::
Your sysadmin must hate you!::
The password(5) name field is longer than a giant static buffer.
+Discussion
+----------
+
+include::i18n.txt[]
+
See Also
--------
gitlink:git-write-tree[1]
diff --git a/Documentation/git-commit.txt b/Documentation/git-commit.txt
index 0b74cd708e..a7adf24fa5 100644
--- a/Documentation/git-commit.txt
+++ b/Documentation/git-commit.txt
@@ -223,6 +223,11 @@ should be recorded as a single commit. In fact, the command
refuses to run when given pathnames (but see `-i` option).
+DISCUSSION
+----------
+
+include::i18n.txt[]
+
ENVIRONMENT VARIABLES
---------------------
The command specified by either the VISUAL or EDITOR environment
diff --git a/Documentation/git-log.txt b/Documentation/git-log.txt
index 79643ac928..e9f746bbd4 100644
--- a/Documentation/git-log.txt
+++ b/Documentation/git-log.txt
@@ -31,7 +31,9 @@ include::pretty-formats.txt[]
Limits the number of commits to show.
<since>..<until>::
- Show only commits between the named two commits.
+ Show only commits between the named two commits. When
+ either <since> or <until> is omitted, it defaults to
+ `HEAD`, i.e. the tip of the current branch.
-p::
Show the change the commit introduces in a patch form.
@@ -63,6 +65,12 @@ git log -r --name-status release..test::
in the "release" branch, along with the list of paths
each commit modifies.
+Discussion
+----------
+
+include::i18n.txt[]
+
+
Author
------
Written by Linus Torvalds <torvalds@osdl.org>
diff --git a/Documentation/git-repo-config.txt b/Documentation/git-repo-config.txt
index b379ec5075..c55a8ba0dc 100644
--- a/Documentation/git-repo-config.txt
+++ b/Documentation/git-repo-config.txt
@@ -87,7 +87,10 @@ OPTIONS
git-repo-config will ensure that the output is "true" or "false"
--int::
- git-repo-config will ensure that the output is a simple decimal number
+ git-repo-config will ensure that the output is a simple
+ decimal number. An optional value suffix of 'k', 'm', or 'g'
+ in the config file will cause the value to be multiplied
+ by 1024, 1048576, or 1073741824 prior to output.
ENVIRONMENT
diff --git a/Documentation/git-rev-list.txt b/Documentation/git-rev-list.txt
index 9e0dcf8d3f..86c94e7dfd 100644
--- a/Documentation/git-rev-list.txt
+++ b/Documentation/git-rev-list.txt
@@ -21,6 +21,7 @@ SYNOPSIS
[ \--stdin ]
[ \--topo-order ]
[ \--parents ]
+ [ \--encoding[=<encoding>] ]
[ \--(author|committer|grep)=<pattern> ]
[ [\--objects | \--objects-edge] [ \--unpacked ] ]
[ \--pretty | \--header ]
diff --git a/Documentation/git-show.txt b/Documentation/git-show.txt
index 98dea6125d..c210b9af6b 100644
--- a/Documentation/git-show.txt
+++ b/Documentation/git-show.txt
@@ -30,8 +30,8 @@ This manual page describes only the most frequently used options.
OPTIONS
-------
-<commitid>::
- ID of the commit to show.
+<object>::
+ The name of the object to show.
include::pretty-formats.txt[]
@@ -40,7 +40,8 @@ EXAMPLES
--------
git show v1.0.0::
- Shows the tag `v1.0.0`.
+ Shows the tag `v1.0.0`, along with the object the tags
+ points at.
git show v1.0.0^{tree}::
Shows the tree pointed to by the tag `v1.0.0`.
@@ -54,10 +55,16 @@ git show master:Makefile master:t/Makefile
Concatenates the contents of said Makefiles in the head
of the branch `master`.
+Discussion
+----------
+
+include::i18n.txt[]
+
Author
------
Written by Linus Torvalds <torvalds@osdl.org> and
-Junio C Hamano <junkio@cox.net>
+Junio C Hamano <junkio@cox.net>. Significantly enhanced by
+Johannes Schindelin <Johannes.Schindelin@gmx.de>.
Documentation
diff --git a/Documentation/i18n.txt b/Documentation/i18n.txt
new file mode 100644
index 0000000000..b4cbb3830e
--- /dev/null
+++ b/Documentation/i18n.txt
@@ -0,0 +1,57 @@
+At the core level, git is character encoding agnostic.
+
+ - The pathnames recorded in the index and in the tree objects
+ are treated as uninterpreted sequences of non-NUL bytes.
+ What readdir(2) returns are what are recorded and compared
+ with the data git keeps track of, which in turn are expected
+ to be what lstat(2) and creat(2) accepts. There is no such
+ thing as pathname encoding translation.
+
+ - The contents of the blob objects are uninterpreted sequence
+ of bytes. There is no encoding translation at the core
+ level.
+
+ - The commit log messages are uninterpreted sequence of non-NUL
+ bytes.
+
+Although we encourage that the commit log messages are encoded
+in UTF-8, both the core and git Porcelain are designed not to
+force UTF-8 on projects. If all participants of a particular
+project find it more convenient to use legacy encodings, git
+does not forbid it. However, there are a few things to keep in
+mind.
+
+. `git-commit-tree` (hence, `git-commit` which uses it) issues
+ an warning if the commit log message given to it does not look
+ like a valid UTF-8 string, unless you explicitly say your
+ project uses a legacy encoding. The way to say this is to
+ have core.commitencoding in `.git/config` file, like this:
++
+------------
+[core]
+ commitencoding = ISO-8859-1
+------------
++
+Commit objects created with the above setting record the value
+of `core.commitencoding` in its `encoding` header. This is to
+help other people who look at them later. Lack of this header
+implies that the commit log message is encoded in UTF-8.
+
+. `git-log`, `git-show` and friends looks at the `encoding`
+ header of a commit object, and tries to re-code the log
+ message into UTF-8 unless otherwise specified. You can
+ specify the desired output encoding with
+ `core.logoutputencoding` in `.git/config` file, like this:
++
+------------
+[core]
+ logoutputencoding = ISO-8859-1
+------------
++
+If you do not have this configuration variable, the value of
+`core.commitencoding` is used instead.
+
+Note that we deliberately chose not to re-code the commit log
+message when a commit is made to force UTF-8 at the commit
+object level, because re-coding to UTF-8 is not necessarily a
+reversible operation.
diff --git a/Documentation/pretty-formats.txt b/Documentation/pretty-formats.txt
index 996f628903..fb0b0b9582 100644
--- a/Documentation/pretty-formats.txt
+++ b/Documentation/pretty-formats.txt
@@ -76,3 +76,10 @@ displayed in full, regardless of whether --abbrev or
--no-abbrev are used, and 'parents' information show the
true parent commits, without taking grafts nor history
simplification into account.
+
+--encoding[=<encoding>]::
+ The commit objects record the encoding used for the log message
+ in their encoding header; this option can be used to tell the
+ command to re-code the commit log message in the encoding
+ preferred by the user. For non plumbing commands this
+ defaults to UTF-8.
diff --git a/Documentation/urls.txt b/Documentation/urls.txt
index 670827c323..870c95073b 100644
--- a/Documentation/urls.txt
+++ b/Documentation/urls.txt
@@ -40,9 +40,11 @@ In addition to the above, as a short-hand, the name of a
file in `$GIT_DIR/remotes` directory can be given; the
named file should be in the following format:
- URL: one of the above URL format
- Push: <refspec>
- Pull: <refspec>
+------------
+URL: one of the above URL format
+Push: <refspec>
+Pull: <refspec>
+------------
Then such a short-hand is specified in place of
<repository> without <refspec> parameters on the command
@@ -54,10 +56,12 @@ be specified for additional branch mappings.
Or, equivalently, in the `$GIT_DIR/config` (note the use
of `fetch` instead of `Pull:`):
+------------
[remote "<remote>"]
url = <url>
push = <refspec>
fetch = <refspec>
+------------
The name of a file in `$GIT_DIR/branches` directory can be
specified as an older notation short-hand; the named
@@ -68,10 +72,15 @@ name of remote head (URL fragment notation).
without the fragment is equivalent to have this in the
corresponding file in the `$GIT_DIR/remotes/` directory.
- URL: <url>
- Pull: refs/heads/master:<remote>
+------------
+URL: <url>
+Pull: refs/heads/master:<remote>
+------------
+
while having `<url>#<head>` is equivalent to
- URL: <url>
- Pull: refs/heads/<head>:<remote>
+------------
+URL: <url>
+Pull: refs/heads/<head>:<remote>
+------------