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

5 lines
5.9 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-cvsexportcommit  - 将一次提交导出到 CVS 签出</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 cvsexportcommit [-h] [-u] [-v] [-c] [-P] [-p] [-a] [-d cvsroot]        [-w cvsworkdir] [-W] [-f] [-m msgprefix] [PARENTCOMMIT] COMMITID</pre></div></div><div class="doc-postil"><div class="c-markdown"><h2>描述</h2></div></div><div class="doc-postil"><div class="c-markdown"><p>将 Git 中的提交导出到 CVS 签出,从而更容易将 Git 存储库中的修补程序合并到 CVS 存储库中。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>使用-w开关指定 CVS 签出的名称,或从 CVS 工作副本的根目录执行。在后一种情况下,必须定义 GIT_DIR。看下面的例子。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>它尽最大努力去做安全的事情,它会检查 CVS 结帐中的文件是否保持不变并且是最新的,并且默认情况下它不会自动提交。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>支持影响二进制文件的文件添加,删除和提交。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>如果提交是合并提交,则必须告诉<code>git cvsexportcommit</code>应该对变更集进行的操作。</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</p></div></div><div class="doc-postil"><div class="c-markdown"><p>如果干净地补丁应用,自动提交。如果任何人不能应用或出现其他问题,它将不会提交。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-p</p></div></div><div class="doc-postil"><div class="c-markdown"><p>应用补丁时要迂腐(偏执狂)。使用--fuzz = 0调用修补程序</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-a</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</p></div></div><div class="doc-postil"><div class="c-markdown"><p>设置一个替代的 CVSROOT 使用。这对应于 CVS -d参数。通常用户不想设置它除非以非对称方式使用 CVS 。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-f</p></div></div><div class="doc-postil"><div class="c-markdown"><p>即使文件不是最新的,也强制合并。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-P</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</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</p></div></div><div class="doc-postil"><div class="c-markdown"><p>尝试导出之前,从 CVS 存储库更新受影响的文件。</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>在应用修补程序之前,在工作 CVS 签出时反向 CVS 关键字扩展(例如$ Revision1.2.3.4 $变为$ Revision $)。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-w</p></div></div><div class="doc-postil"><div class="c-markdown"><p>指定用于导出的 CVS 签出的位置。如果当前目录位于 Git 存储库中,则此选项不需要在执行前设置 GIT_DIR。默认值是<code>cvsexportcommit.cvsdir</code>。的值。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-W</p></div></div><div class="doc-postil"><div class="c-markdown"><p>告知 cvsexportcommit当前的工作目录不仅是一个 Git 签出,还包括 CVS 签出。因此在继续之前Git 会将工作目录重置为父提交。</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>Verbose.</p></div></div><div class="doc-postil"><div class="c-markdown"><h2>组态</h2></div></div><div class="doc-postil"><div class="c-markdown"><p>cvsexportcommit.cvsdir</p></div></div><div class="doc-postil"><div class="c-markdown"><p>用于导出的 CVS 签出的默认位置。</p></div></div><div class="doc-postil"><div class="c-markdown"><h2>示例</h2></div></div><div class="doc-postil"><div class="c-markdown"><p>将一个补丁合并到 CVS 中</p></div></div><div class="doc-postil"><div class="c-markdown"><pre class="prism-token token language-javascript">$ export GIT_DIR=~/project/.git
$ cd ~/project_cvs_checkout
$ git cvsexportcommit -v &lt;commit-sha1&gt;$ cvs commit -F .msg &lt;files&gt;</pre></div></div><div class="doc-postil"><div class="c-markdown"><p>将一个补丁合并到 CVS 中(-c和-w选项。工作目录位于 Git Repo 内</p></div></div><div class="doc-postil"><div class="c-markdown"><pre class="prism-token token language-javascript">        $ git cvsexportcommit -v -c -w ~/project_cvs_checkout &lt;commit-sha1&gt;</pre></div></div><div class="doc-postil"><div class="c-markdown"><p>自动将待处理的补丁合并到 CVS 中 - 只有在您确实知道自己在做什么的情况下</p></div></div><div class="doc-postil"><div class="c-markdown"><pre class="prism-token token language-javascript">$ export GIT_DIR=~/project/.git
$ cd ~/project_cvs_checkout
$ git cherry cvshead myhead | sed -n 's/^+ //p' | xargs -l1 git cvsexportcommit -c -p -v</pre></div></div></div>