From c0ea7c63de96c9365801e62a878af42131512343 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Sun, 15 Jul 2007 07:19:06 +0000 Subject: [PATCH] Autogenerated HTML docs for v1.5.3-rc1-27-ga5e40 --- git-commit-tree.html | 4 ++-- git-commit-tree.txt | 2 +- git-fast-import.html | 37 +++++++++++++++++++++++++++++++------ git-fast-import.txt | 40 +++++++++++++++++++++++++++++++++++----- 4 files changed, 69 insertions(+), 14 deletions(-) diff --git a/git-commit-tree.html b/git-commit-tree.html index 0c73facf6..cf6b69c2d 100644 --- a/git-commit-tree.html +++ b/git-commit-tree.html @@ -356,7 +356,7 @@ GIT_AUTHOR_EMAIL:

name = "Your Name" email = "your@email.address.xz" -

A commit comment is read from stdin (max 999 chars). If a changelog +

A commit comment is read from stdin. If a changelog entry is not provided via "<" redirection, "git-commit-tree" will just wait for one to be entered and terminated with ^D.

@@ -482,7 +482,7 @@ reversible operation.

diff --git a/git-commit-tree.txt b/git-commit-tree.txt index 9586b9729..5870c2ce4 100644 --- a/git-commit-tree.txt +++ b/git-commit-tree.txt @@ -72,7 +72,7 @@ GIT_AUTHOR_EMAIL: name = "Your Name" email = "your@email.address.xz" -A commit comment is read from stdin (max 999 chars). If a changelog +A commit comment is read from stdin. If a changelog entry is not provided via "<" redirection, "git-commit-tree" will just wait for one to be entered and terminated with ^D. diff --git a/git-fast-import.html b/git-fast-import.html index 760cecf21..c537b33e2 100644 --- a/git-fast-import.html +++ b/git-fast-import.html @@ -633,7 +633,7 @@ change to the project.

data ('from' SP <committish> LF)? ('merge' SP <committish> LF)? - (filemodify | filedelete | filerename | filedeleteall)* + (filemodify | filedelete | filecopy | filerename | filedeleteall)* LF

where <ref> is the name of the branch to make the commit on. @@ -652,13 +652,13 @@ message (see below for data command syntax). To import an empty commit message use a 0 length data. Commit messages are free-form and are not interpreted by Git. Currently they must be encoded in UTF-8, as fast-import does not permit other encodings to be specified.

-

Zero or more filemodify, filedelete, filename and -filedeleteall commands +

Zero or more filemodify, filedelete, filecopy, filerename +and filedeleteall commands may be included to update the contents of the branch prior to creating the commit. These commands may be supplied in any order. However it is recommended that a filedeleteall command preceed -all filemodify and filerename commands in the same commit, as -filedeleteall +all filemodify, filecopy and filerename commands in the same +commit, as filedeleteall wipes the branch clean (see below).

author

An author command may optionally appear, if the author information @@ -850,6 +850,23 @@ first non-empty directory or the root is reached.

here <path> is the complete path of the file or subdirectory to be removed from the branch. See filemodify above for a detailed description of <path>.

+

filecopy

+

Recursively copies an existing file or subdirectory to a different +location within the branch. The existing file or directory must +exist. If the destination exists it will be completely replaced +by the content copied from the source.

+
+
+
        'C' SP <path> SP <path> LF
+
+

here the first <path> is the source location and the second +<path> is the destination. See filemodify above for a detailed +description of what <path> may look like. To use a source path +that contains SP the path must be quoted.

+

A filecopy command takes effect immediately. Once the source +location has been copied to the destination any future commands +applied to the source location will not impact the destination of +the copy.

filerename

Renames an existing file or subdirectory to a different location within the branch. The existing file or directory must exist. If @@ -866,6 +883,14 @@ that contains SP the path must be quoted.

location has been renamed to the destination any future commands applied to the source location will create new files there and not impact the destination of the rename.

+

Note that a filerename is the same as a filecopy followed by a +filedelete of the source location. There is a slight performance +advantage to using filerename, but the advantage is so small +that it is never worth trying to convert a delete/add pair in +source material into a rename for fast-import. This filerename +command is provided just to simplify frontends that already have +rename information and don't want bother with decomposing it into a +filecopy followed by a filedelete.

filedeleteall

Included in a commit command to remove all files (and also all directories) from the branch. This command resets the internal @@ -1223,7 +1248,7 @@ memory footprint (less than 2.7 MiB per active branch).

diff --git a/git-fast-import.txt b/git-fast-import.txt index 80a8ee0f1..30ee98d17 100644 --- a/git-fast-import.txt +++ b/git-fast-import.txt @@ -302,7 +302,7 @@ change to the project. data ('from' SP LF)? ('merge' SP LF)? - (filemodify | filedelete | filerename | filedeleteall)* + (filemodify | filedelete | filecopy | filerename | filedeleteall)* LF .... @@ -325,13 +325,13 @@ commit message use a 0 length data. Commit messages are free-form and are not interpreted by Git. Currently they must be encoded in UTF-8, as fast-import does not permit other encodings to be specified. -Zero or more `filemodify`, `filedelete`, `filename` and -`filedeleteall` commands +Zero or more `filemodify`, `filedelete`, `filecopy`, `filerename` +and `filedeleteall` commands may be included to update the contents of the branch prior to creating the commit. These commands may be supplied in any order. However it is recommended that a `filedeleteall` command preceed -all `filemodify` and `filerename` commands in the same commit, as -`filedeleteall` +all `filemodify`, `filecopy` and `filerename` commands in the same +commit, as `filedeleteall` wipes the branch clean (see below). `author` @@ -497,6 +497,27 @@ here `` is the complete path of the file or subdirectory to be removed from the branch. See `filemodify` above for a detailed description of ``. +`filecopy` +^^^^^^^^^^^^ +Recursively copies an existing file or subdirectory to a different +location within the branch. The existing file or directory must +exist. If the destination exists it will be completely replaced +by the content copied from the source. + +.... + 'C' SP SP LF +.... + +here the first `` is the source location and the second +`` is the destination. See `filemodify` above for a detailed +description of what `` may look like. To use a source path +that contains SP the path must be quoted. + +A `filecopy` command takes effect immediately. Once the source +location has been copied to the destination any future commands +applied to the source location will not impact the destination of +the copy. + `filerename` ^^^^^^^^^^^^ Renames an existing file or subdirectory to a different location @@ -517,6 +538,15 @@ location has been renamed to the destination any future commands applied to the source location will create new files there and not impact the destination of the rename. +Note that a `filerename` is the same as a `filecopy` followed by a +`filedelete` of the source location. There is a slight performance +advantage to using `filerename`, but the advantage is so small +that it is never worth trying to convert a delete/add pair in +source material into a rename for fast-import. This `filerename` +command is provided just to simplify frontends that already have +rename information and don't want bother with decomposing it into a +`filecopy` followed by a `filedelete`. + `filedeleteall` ^^^^^^^^^^^^^^^ Included in a `commit` command to remove all files (and also all -- 2.26.2