.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
.\" Instead of manually editing it, you probably should edit the DocBook XML
.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "GIT\-COMMIT" "1" "07/20/2007" "Git 1.5.3.rc2.22.g69a9b" "Git Manual"
+.TH "GIT\-COMMIT" "1" "07/25/2007" "Git 1.5.3.rc3" "Git Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
\-m <msg>|\-\-message=<msg>
Use the given <msg> as the commit message.
.TP
+\-t <file>|\-\-template=<file>
+Use the contents of the given file as the initial version of the commit message. The editor is invoked and you can make subsequent changes. If a message is specified using the \-m or \-F options, this option has no effect. The template file may also be specified using the commit.template configuration variable.
+.TP
\-s|\-\-signoff
Add Signed\-off\-by line at the end of the commit message.
.TP
.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
.\" Instead of manually editing it, you probably should edit the DocBook XML
.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "GIT\-DIFF\-TREE" "1" "07/19/2007" "Git 1.5.3.rc1.16.g9d6f" "Git Manual"
+.TH "GIT\-DIFF\-TREE" "1" "07/25/2007" "Git 1.5.3.rc3" "Git Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
This flag causes "git\-diff\-tree \-\-stdin" to also show the commit message before the differences.
.TP
\-\-pretty[=\fI<format>\fR]
-Pretty print the contents of the commit logs in a given format, where \fI<format>\fR can be one of \fIoneline\fR, \fIshort\fR, \fImedium\fR, \fIfull\fR, \fIfuller\fR, \fIemail\fR, \fIraw\fR and \fIformat:<string>\fR. When left out the format default to \fImedium\fR.
+Pretty\-print the contents of the commit logs in a given format, where \fI<format>\fR can be one of \fIoneline\fR, \fIshort\fR, \fImedium\fR, \fIfull\fR, \fIfuller\fR, \fIemail\fR, \fIraw\fR and \fIformat:<string>\fR. When omitted, the format defaults to \fImedium\fR.
.TP
\-\-abbrev\-commit
Instead of showing the full 40\-byte hexadecimal commit object name, show only handful hexdigits prefix. Non default number of digits can be specified with "\-\-abbrev=<n>" (which also modifies diff output, if it is displayed).
E.g, \fIformat:"The author of %h was %an, %ar%nThe title was >>%s<<%n"\fR would show something like this:
.sp
.nf
+.ft C
The author of fe6e0ee was Junio C Hamano, 23 hours ago
The title was >>t4119: test autocomputing \-p<n> for traditional diff input.<<
+.ft
+
.fi
The placeholders are:
.RS
which tells you that the last commit changed just one file (it's from this one:
.sp
.nf
+.ft C
commit 3c6f7ca19ad4043e9e72fa94106f352897e651a8
tree 5319e4d609cdd282069cc4dce33c1db559539b03
parent b4e628ea30d5ab3606119d2ea5caeab141d38df7
Once I do the reference tracking, I'll also make it print out all the
HEAD commits it finds, which is even more interesting.
+.ft
+
.fi
in case you care).
.SH "OUTPUT FORMAT"
An output line is formatted this way:
.sp
.nf
+.ft C
in\-place edit :100644 100644 bcd1234... 0123456... M file0
copy\-edit :100644 100644 abcd123... 1234567... C68 file1 file2
rename\-edit :100644 100644 abcd123... 1234567... R86 file1 file3
create :000000 100644 0000000... 1234567... A file4
delete :100644 000000 1234567... 0000000... D file5
unmerged :000000 000000 0000000... 0000000... U file6
+.ft
+
.fi
That is, from the left to the right:
.TP 3
Example:
.sp
.nf
+.ft C
:100644 100644 5be4a4...... 000000...... M file.c
+.ft
+
.fi
When \-z option is not used, TAB, LF, and backslash characters in pathnames are represented as \\t, \\n, and \\\\, respectively.
.SH "DIFF FORMAT FOR MERGES"
Example:
.sp
.nf
+.ft C
::100644 100644 100644 fabadb8... cc95eb0... 4866510... MM describe.c
+.ft
+
.fi
Note that \fIcombined diff\fR lists only files which were modified from all parents.
.SH "GENERATING PATCHES WITH \-P"
git\-diff\-tree and git\-diff\-files can take \fI\-c\fR or \fI\-\-cc\fR option to produce \fIcombined diff\fR, which looks like this:
.sp
.nf
+.ft C
diff \-\-combined describe.c
index fabadb8,cc95eb0..4866510
\-\-\- a/describe.c
if (!initialized) {
initialized = 1;
for_each_ref(get_name);
+.ft
+
.fi
.TP 3
1.
.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
.\" Instead of manually editing it, you probably should edit the DocBook XML
.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "GIT\-LOG" "1" "07/19/2007" "Git 1.5.3.rc1.16.g9d6f" "Git Manual"
+.TH "GIT\-LOG" "1" "07/25/2007" "Git 1.5.3.rc3" "Git Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.SH "OPTIONS"
.TP
\-\-pretty[=\fI<format>\fR]
-Pretty print the contents of the commit logs in a given format, where \fI<format>\fR can be one of \fIoneline\fR, \fIshort\fR, \fImedium\fR, \fIfull\fR, \fIfuller\fR, \fIemail\fR, \fIraw\fR and \fIformat:<string>\fR. When left out the format default to \fImedium\fR.
+Pretty\-print the contents of the commit logs in a given format, where \fI<format>\fR can be one of \fIoneline\fR, \fIshort\fR, \fImedium\fR, \fIfull\fR, \fIfuller\fR, \fIemail\fR, \fIraw\fR and \fIformat:<string>\fR. When omitted, the format defaults to \fImedium\fR.
.TP
\-\-abbrev\-commit
Instead of showing the full 40\-byte hexadecimal commit object name, show only handful hexdigits prefix. Non default number of digits can be specified with "\-\-abbrev=<n>" (which also modifies diff output, if it is displayed).
E.g, \fIformat:"The author of %h was %an, %ar%nThe title was >>%s<<%n"\fR would show something like this:
.sp
.nf
+.ft C
The author of fe6e0ee was Junio C Hamano, 23 hours ago
The title was >>t4119: test autocomputing \-p<n> for traditional diff input.<<
+.ft
+
.fi
The placeholders are:
.RS
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 i18n.commitencoding in .git/config file, like this:
.sp
.nf
+.ft C
[i18n]
commitencoding = ISO\-8859\-1
+.ft
+
.fi
Commit objects created with the above setting record the value of i18n.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.
.TP
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 i18n.logoutputencoding in .git/config file, like this:
.sp
.nf
+.ft C
[i18n]
logoutputencoding = ISO\-8859\-1
+.ft
+
.fi
If you do not have this configuration variable, the value of i18n.commitencoding is used instead.
.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
.\" Instead of manually editing it, you probably should edit the DocBook XML
.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "GIT\-REV\-LIST" "1" "07/24/2007" "Git 1.5.3.rc2.37.g1cff" "Git Manual"
+.TH "GIT\-REV\-LIST" "1" "07/25/2007" "Git 1.5.3.rc3" "Git Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
Using these options, \fBgit\-rev\-list\fR(1) will act similar to the more specialized family of commit log tools: \fBgit\-log\fR(1), \fBgit\-show\fR(1), and \fBgit\-whatchanged\fR(1)
.TP
\-\-pretty[=\fI<format>\fR]
-Pretty print the contents of the commit logs in a given format, where \fI<format>\fR can be one of \fIoneline\fR, \fIshort\fR, \fImedium\fR, \fIfull\fR, \fIfuller\fR, \fIemail\fR, \fIraw\fR and \fIformat:<string>\fR. When left out the format default to \fImedium\fR.
+Pretty\-print the contents of the commit logs in a given format, where \fI<format>\fR can be one of \fIoneline\fR, \fIshort\fR, \fImedium\fR, \fIfull\fR, \fIfuller\fR, \fIemail\fR, \fIraw\fR and \fIformat:<string>\fR. When omitted, the format defaults to \fImedium\fR.
.TP
\-\-abbrev\-commit
Instead of showing the full 40\-byte hexadecimal commit object name, show only handful hexdigits prefix. Non default number of digits can be specified with "\-\-abbrev=<n>" (which also modifies diff output, if it is displayed).
.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
.\" Instead of manually editing it, you probably should edit the DocBook XML
.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "GIT\-SHOW" "1" "07/19/2007" "Git 1.5.3.rc1.16.g9d6f" "Git Manual"
+.TH "GIT\-SHOW" "1" "07/25/2007" "Git 1.5.3.rc3" "Git Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
The name of the object to show. For a more complete list of ways to spell object names, see "SPECIFYING REVISIONS" section in \fBgit\-rev\-parse\fR(1).
.TP
\-\-pretty[=\fI<format>\fR]
-Pretty print the contents of the commit logs in a given format, where \fI<format>\fR can be one of \fIoneline\fR, \fIshort\fR, \fImedium\fR, \fIfull\fR, \fIfuller\fR, \fIemail\fR, \fIraw\fR and \fIformat:<string>\fR. When left out the format default to \fImedium\fR.
+Pretty\-print the contents of the commit logs in a given format, where \fI<format>\fR can be one of \fIoneline\fR, \fIshort\fR, \fImedium\fR, \fIfull\fR, \fIfuller\fR, \fIemail\fR, \fIraw\fR and \fIformat:<string>\fR. When omitted, the format defaults to \fImedium\fR.
.TP
\-\-abbrev\-commit
Instead of showing the full 40\-byte hexadecimal commit object name, show only handful hexdigits prefix. Non default number of digits can be specified with "\-\-abbrev=<n>" (which also modifies diff output, if it is displayed).
E.g, \fIformat:"The author of %h was %an, %ar%nThe title was >>%s<<%n"\fR would show something like this:
.sp
.nf
+.ft C
The author of fe6e0ee was Junio C Hamano, 23 hours ago
The title was >>t4119: test autocomputing \-p<n> for traditional diff input.<<
+.ft
+
.fi
The placeholders are:
.RS
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 i18n.commitencoding in .git/config file, like this:
.sp
.nf
+.ft C
[i18n]
commitencoding = ISO\-8859\-1
+.ft
+
.fi
Commit objects created with the above setting record the value of i18n.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.
.TP
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 i18n.logoutputencoding in .git/config file, like this:
.sp
.nf
+.ft C
[i18n]
logoutputencoding = ISO\-8859\-1
+.ft
+
.fi
If you do not have this configuration variable, the value of i18n.commitencoding is used instead.