summaryrefslogtreecommitdiffstats
path: root/git-fast-import.html
diff options
context:
space:
mode:
Diffstat (limited to 'git-fast-import.html')
-rw-r--r--git-fast-import.html36
1 files changed, 23 insertions, 13 deletions
diff --git a/git-fast-import.html b/git-fast-import.html
index 4d7aaaf05..92cf5392a 100644
--- a/git-fast-import.html
+++ b/git-fast-import.html
@@ -1158,7 +1158,7 @@ and some sanity checks on the numeric values may also be performed.</p></div>
</dt>
<dd>
<p>
- This is the standard email format as described by RFC 2822.
+ This is the standard date format as described by RFC 2822.
</p>
<div class="paragraph"><p>An example value is &#8220;Tue Feb 6 11:22:18 2007 -0500&#8221;. The Git
parser is accurate, but a little on the lenient side. It is the
@@ -1583,16 +1583,25 @@ in octal. Git only supports the following modes:</p></div>
</ul></div>
<div class="paragraph"><p>In both formats <code>&lt;path&gt;</code> is the complete path of the file to be added
(if not already existing) or modified (if already existing).</p></div>
-<div class="paragraph"><p>A <code>&lt;path&gt;</code> string must use UNIX-style directory separators (forward
-slash <code>/</code>), may contain any byte other than <code>LF</code>, and must not
-start with double quote (<code>"</code>).</p></div>
-<div class="paragraph"><p>A path can use C-style string quoting; this is accepted in all cases
-and mandatory if the filename starts with double quote or contains
-<code>LF</code>. In C-style quoting, the complete name should be surrounded with
-double quotes, and any <code>LF</code>, backslash, or double quote characters
-must be escaped by preceding them with a backslash (e.g.,
-<code>"path/with\n, \\ and \" in it"</code>).</p></div>
-<div class="paragraph"><p>The value of <code>&lt;path&gt;</code> must be in canonical form. That is it must not:</p></div>
+<div class="paragraph"><p>A <code>&lt;path&gt;</code> can be written as unquoted bytes or a C-style quoted string.</p></div>
+<div class="paragraph"><p>When a <code>&lt;path&gt;</code> does not start with a double quote (<code>"</code>), it is an
+unquoted string and is parsed as literal bytes without any escape
+sequences. However, if the filename contains <code>LF</code> or starts with double
+quote, it cannot be represented as an unquoted string and must be
+quoted. Additionally, the source <code>&lt;path&gt;</code> in <code>filecopy</code> or <code>filerename</code>
+must be quoted if it contains SP.</p></div>
+<div class="paragraph"><p>When a <code>&lt;path&gt;</code> starts with a double quote (<code>"</code>), it is a C-style quoted
+string, where the complete filename is enclosed in a pair of double
+quotes and escape sequences are used. Certain characters must be escaped
+by preceding them with a backslash: <code>LF</code> is written as <code>\n</code>, backslash
+as <code>\\</code>, and double quote as <code>\"</code>. Some characters may optionally be
+written with escape sequences: <code>\a</code> for bell, <code>\b</code> for backspace, <code>\f</code>
+for form feed, <code>\n</code> for line feed, <code>\r</code> for carriage return, <code>\t</code> for
+horizontal tab, and <code>\v</code> for vertical tab. Any byte can be written with
+3-digit octal codes (e.g., <code>\033</code>). All filenames can be represented as
+quoted strings.</p></div>
+<div class="paragraph"><p>A <code>&lt;path&gt;</code> must use UNIX-style directory separators (forward slash <code>/</code>)
+and its value must be in canonical form. That is it must not:</p></div>
<div class="ulist"><ul>
<li>
<p>
@@ -1617,7 +1626,8 @@ contain the special component <code>.</code> or <code>..</code> (e.g. <code>foo/
</li>
</ul></div>
<div class="paragraph"><p>The root of the tree can be represented by an empty string as <code>&lt;path&gt;</code>.</p></div>
-<div class="paragraph"><p>It is recommended that <code>&lt;path&gt;</code> always be encoded using UTF-8.</p></div>
+<div class="paragraph"><p><code>&lt;path&gt;</code> cannot contain NUL, either literally or escaped as <code>\000</code>.
+It is recommended that <code>&lt;path&gt;</code> always be encoded using UTF-8.</p></div>
</div>
<div class="sect3">
<h4 id="_code_filedelete_code"><code>filedelete</code></h4>
@@ -2640,7 +2650,7 @@ fastimport.unpackLimit
<div id="footer">
<div id="footer-text">
Last updated
- 2024-02-08 15:45:59 PST
+ 2024-04-23 14:40:04 PDT
</div>
</div>
</body>