uTools-Manuals/docs/git/git ls-files.html
2019-04-08 23:22:26 +08:00

1 line
13 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="c-markdown doc-markdown"><div class="doc-postil"><div class="c-markdown"><h2>命名</h2></div></div><div class="doc-postil"><div class="c-markdown"><p>git-ls-files  - 显示有关索引和工作树中文件的信息</p></div></div><div class="doc-postil"><div class="c-markdown"><h2>概要</h2></div></div><div class="doc-postil"><div class="c-markdown"><pre class="prism-token token language-javascript">git ls-files [-z] [-t] [-v]                (--[cached|deleted|others|ignored|stage|unmerged|killed|modified])*                (-[c|d|o|i|s|u|k|m])*                [--eol]                [-x &lt;pattern&gt;|--exclude=&lt;pattern&gt;]                [-X &lt;file&gt;|--exclude-from=&lt;file&gt;]                [--exclude-per-directory=&lt;file&gt;]                [--exclude-standard]                [--error-unmatch] [--with-tree=&lt;tree-ish&gt;]                [--full-name] [--recurse-submodules]                [--abbrev] [--] [&lt;file&gt;…]</pre></div></div><div class="doc-postil"><div class="c-markdown"><h2>描述</h2></div></div><div class="doc-postil"><div class="c-markdown"><p>这将目录缓存索引中的文件列表与实际工作目录列表合并,并显示两者的不同组合。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>下面的一个或多个选项可用于确定显示的文件:</p></div></div><div class="doc-postil"><div class="c-markdown"><h2>选项</h2></div></div><div class="doc-postil"><div class="c-markdown"><p>-c   --cached</p></div></div><div class="doc-postil"><div class="c-markdown"><p>在输出中显示缓存的文件(默认)</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-d   --deleted</p></div></div><div class="doc-postil"><div class="c-markdown"><p>在输出中显示已删除的文件</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-m   --modified</p></div></div><div class="doc-postil"><div class="c-markdown"><p>在输出中显示已修改的文件</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-o   --others</p></div></div><div class="doc-postil"><div class="c-markdown"><p>在输出中显示其他(即未跟踪的)文件</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-i   --ignored</p></div></div><div class="doc-postil"><div class="c-markdown"><p>在输出中只显示被忽略的文件。在索引中显示文件时,只打印排除模式匹配的文件。显示“其他”文件时,只显示通过排除模式匹配的文件。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-s   --stage</p></div></div><div class="doc-postil"><div class="c-markdown"><p>在输出中显示暂存内容的模式位,对象名称和阶段编号。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>--directory</p></div></div><div class="doc-postil"><div class="c-markdown"><p>如果整个目录被分类为“其他”,则只显示其名称(带有斜线)而不是其全部内容。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>--no-empty-directory</p></div></div><div class="doc-postil"><div class="c-markdown"><p>不要列出空目录。没有 - 目录无效。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-u   --unmerged</p></div></div><div class="doc-postil"><div class="c-markdown"><p>在输出中显示未合并的文件forces --stage</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-k   --killed</p></div></div><div class="doc-postil"><div class="c-markdown"><p>在文件系统上显示由于文件/目录冲突而需要删除的文件以使checkout-index成功。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-z</p></div></div><div class="doc-postil"><div class="c-markdown"><p>\ 0行输出终止不要引用文件名。有关更多信息请参阅下面的OUTPUT。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-x &lt;pattern&gt;   --exclude=&lt;pattern&gt;</p></div></div><div class="doc-postil"><div class="c-markdown"><p>跳过未匹配的文件匹配模式。请注意模式是一个外壳通配符模式。有关更多信息请参阅下面的EXCLUDE PATTERNS。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-X &lt;file&gt;   --exclude-from=&lt;file&gt;</p></div></div><div class="doc-postil"><div class="c-markdown"><p>&lt;file&gt;读取排除模式; 每行1个。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>--exclude-per-directory=&lt;file&gt;</p></div></div><div class="doc-postil"><div class="c-markdown"><p>读取仅适用于&lt;file&gt;中的目录及其子目录的其他排除模式。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>--exclude-standard</p></div></div><div class="doc-postil"><div class="c-markdown"><p>在每个目录中添加标准Git排除项.git / info / exclude.gitignore和用户的全局排除文件。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>--error-unmatch</p></div></div><div class="doc-postil"><div class="c-markdown"><p>如果任何&lt;file&gt;没有出现在索引中则将其视为错误返回1</p></div></div><div class="doc-postil"><div class="c-markdown"><p>--with-tree=&lt;tree-ish&gt;</p></div></div><div class="doc-postil"><div class="c-markdown"><p>当使用--error-unmatch将用户提供的&lt;file&gt;(即路径模式)参数展开为路径时,假定自从指定的&lt;tree-ish&gt;后索引中删除的路径仍存在。使用此选项<code>-s</code><code>-u</code>选项没有任何意义。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-t</p></div></div><div class="doc-postil"><div class="c-markdown"><p>此功能已半弃用。对于编写脚本的目的git-status [1] <code>--porcelain</code>和git-diff-files [1] <code>--name-status</code>几乎总是优越的选择用户应该查看git-status [1] <code>--short</code>或git-diff [1] <code>--name-status</code>以获得更多用户友好的选择。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>此选项在每行开始时用以下标记(后跟一个空格)标识文件状态:</p></div></div><div class="doc-postil"><div class="c-markdown"><p>H</p></div></div><div class="doc-postil"><div class="c-markdown"><p>缓存</p></div></div><div class="doc-postil"><div class="c-markdown"><p>S</p></div></div><div class="doc-postil"><div class="c-markdown"><p>skip-worktree</p></div></div><div class="doc-postil"><div class="c-markdown"><p>M</p></div></div><div class="doc-postil"><div class="c-markdown"><p>未合并</p></div></div><div class="doc-postil"><div class="c-markdown"><p>R</p></div></div><div class="doc-postil"><div class="c-markdown"><p>removed/deleted</p></div></div><div class="doc-postil"><div class="c-markdown"><p>C</p></div></div><div class="doc-postil"><div class="c-markdown"><p>modified/changed</p></div></div><div class="doc-postil"><div class="c-markdown"><p>K</p></div></div><div class="doc-postil"><div class="c-markdown"><p>to be killed</p></div></div><div class="doc-postil"><div class="c-markdown"><p>?</p></div></div><div class="doc-postil"><div class="c-markdown"><p>other</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-v</p></div></div><div class="doc-postil"><div class="c-markdown"><p><code>-t</code>标记为<code>assume unchanged</code>请参阅git-update-index [1])的文件类似,但使用小写字母。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>--full-name</p></div></div><div class="doc-postil"><div class="c-markdown"><p>从子目录运行时,该命令通常会输出相对于当前目录的路径。该选项强制相对于项目顶部目录输出路径。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>--recurse-submodules</p></div></div><div class="doc-postil"><div class="c-markdown"><p>在存储库中的每个子模块上递归调用ls-files。目前只支持 - 高速缓存模式。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>--abbrev=&lt;n&gt;</p></div></div><div class="doc-postil"><div class="c-markdown"><p>不显示完整的40字节十六进制对象行只显示部分前缀。非默认位数可以用--abbrev = &lt;n&gt;来指定。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>--debug</p></div></div><div class="doc-postil"><div class="c-markdown"><p>在描述文件的每一行之后,添加更多关于其缓存条目的数据。这旨在显示尽可能多的手动检查信息; 确切的格式可能会随时更改。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>--eol</p></div></div><div class="doc-postil"><div class="c-markdown"><p>显示文件的&lt;eolinfo&gt;&lt;eolattr&gt;&lt;eolinfo&gt;是当“text”属性为“auto”或未设置且core.autocrlf不为false时由Git使用的文件内容标识。&lt;eolinfo&gt;是“文本”“无”“lf”“crlf”“混合”或“”。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>“”表示该文件不是常规文件,它不在索引中或在工作树中无法访问。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>它是“”,“ -  text”“text”“text = auto”“text eol = lf”“text eol = crlf”时检查或提交时使用的属性。由于支持Git 2.10“text = auto eol = lf”和“text = auto eol = crlf”。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>索引“i / &lt;eolinfo&gt;和工作树“w / &lt;eolinfo&gt;”)中的&lt;eolinfo&gt;均显示为常规文件后面跟着“attr / &lt;eolattr&gt;”)。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>不要将更多的参数解释为选项。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>&lt;file&gt;</p></div></div><div class="doc-postil"><div class="c-markdown"><p>要显示的文件。如果没有给出文件,则显示与其他指定标准相匹配的所有文件。</p></div></div><div class="doc-postil"><div class="c-markdown"><h2>输出</h2></div></div><div class="doc-postil"><div class="c-markdown"><p><code>git ls-files</code>只是输出文件名,除非<code>--stage</code>在这种情况下输出:</p></div></div><div class="doc-postil"><div class="c-markdown"><pre class="prism-token token language-javascript">[&lt;tag&gt; ]&lt;mode&gt; &lt;object&gt; &lt;stage&gt; &lt;file&gt;</pre></div></div><div class="doc-postil"><div class="c-markdown"><p><code>git ls-files --eol</code> 将显示i / &lt;eolinfo&gt; &lt;SPACES&gt; w / &lt;eolinfo&gt; &lt;SPACES&gt; attr / &lt;eolattr&gt; &lt;SPACE *&gt; &lt;TAB&gt; &lt;file&gt;</p></div></div><div class="doc-postil"><div class="c-markdown"><p><code>git ls-files --unmerged</code><code>git ls-files --stage</code>可用于检查对未合并的路径的详细信息。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>对于未合并的路径,索引不是记录单个模式/ SHA-1对而是记录多达三个这样的对; 一个来自阶段1中的树O阶段2中的A以及阶段3中的B.这个信息可以由用户或瓷器用来查看最终应该在路径上记录什么。有关状态的更多信息请参阅git-read-tree [1]</p></div></div><div class="doc-postil"><div class="c-markdown"><p>如果没有这个<code>-z</code>选项,带有“不寻常”字符的路径名将按照配置变量的说明引用<code>core.quotePath</code>请参阅git-config [1])。使用<code>-z</code>文件名是逐字输出的并且该行由NUL字节终止。</p></div></div><div class="doc-postil"><div class="c-markdown"><h2>排除模式</h2></div></div><div class="doc-postil"><div class="c-markdown"><p><code>git ls-files</code>可以在遍历目录树时使用“排除模式”列表,并查找指定何时指定标志 - 其他或--ignign的文件。gitignore [5]指定排除模式的格式。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>这些排除模式来自这些地方,以便:</p></div></div><div class="doc-postil"><div class="c-markdown"><ol class="ol-level-0 list-paddingleft-2"><li><p>命令行标志--exclude = &lt;pattern&gt;指定一个模式。模式按照它们在命令行中出现的顺序排列。</p></li></ol></div></div><div class="doc-postil"><div class="c-markdown"><ol class="ol-level-0 list-paddingleft-2"><li><p>命令行标志--exclude-from = &lt;file&gt;指定一个包含模式列表的文件。模式按照它们在文件中出现的顺序排列。</p></li></ol></div></div><div class="doc-postil"><div class="c-markdown"><ol class="ol-level-0 list-paddingleft-2"><li><p>命令行标志--exclude-per-directory = &lt;name&gt; <code>git ls-files</code>通常指定每个目录中文件的名称<code>.gitignore</code>。较深目录中的文件优先。模式按照它们在文件中出现的顺序排列。</p></li></ol></div></div><div class="doc-postil"><div class="c-markdown"><p>使用--exclude-from指定的文件中排除或读取的模式在命令行上指定的模式相对于目录树的顶部。从--exclude-per-directory指定的文件中读取的模式相对于模式文件出现的目录。</p></div></div></div>