mirror of
https://github.com/fofolee/uTools-Manuals.git
synced 2025-06-08 23:14:06 +08:00
3 lines
8.5 KiB
HTML
3 lines
8.5 KiB
HTML
<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-init - 创建一个空的 Git 仓库或重新初始化一个现有仓库</p></div></div><div class="doc-postil"><div class="c-markdown"><h2>概要</h2></div></div><div class="doc-postil"><div class="c-markdown"><pre><code class="language-Bash">git init [-q | --quiet] [--bare] [--template=<template_directory>] [--separate-git-dir <git dir>] [--shared[=<permissions>]] [directory]</code></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 仓库-基本上是一个<code>.git</code>与子目录的目录<code>objects</code>,<code>refs/heads</code>,<code>refs/tags</code>,和模板文件。<code>HEAD</code>还创建了引用主分支的 HEAD 的初始文件。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>如果<code>$GIT_DIR</code>设置了环境变量,那么它将指定一个要使用的路径,而不是<code>./.git</code>存储库的基础。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>如果通过<code>$GIT_OBJECT_DIRECTORY</code>环境变量指定了对象存储目录,则在下面创建sha1目录 - 否则使用默认<code>$GIT_DIR/objects</code>目录。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>在现有的存储库中运行是<code>git init</code>安全的。它不会覆盖已经存在的东西。重新运行<code>git init</code>的主要原因是拾取新添加的模板(或者如果给出--separate-git-dir,则将存储库移动到另一个位置)。</p></div></div><div class="doc-postil"><div class="c-markdown"><h2>选项</h2></div></div><div class="doc-postil"><div class="c-markdown"><p>-q --quiet</p></div></div><div class="doc-postil"><div class="c-markdown"><p>仅打印错误和警告消息;所有其他输出将被抑制。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>--bare</p></div></div><div class="doc-postil"><div class="c-markdown"><p>创建一个裸仓库。如果<code>GIT_DIR</code>未设置环境,则将其设置为当前工作目录。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>--template=<template_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>--separate-git-dir=<git dir></p></div></div><div class="doc-postil"><div class="c-markdown"><p>相反,初始化存储库作为目录之一<code>$GIT_DIR</code>或者<code>./.git/</code>,创建一个包含路径的实际存储库的文本文件存在。该文件充当文件系统不可知的 Git 与存储库的符号链接。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>如果这是重新初始化,存储库将被移动到指定的路径。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>--shared=(false|true|umask|group|all|world|everybody|0xxx)</p></div></div><div class="doc-postil"><div class="c-markdown"><p>指定 Git 存储库将在多个用户之间共享。这允许属于同一组的用户推入该存储库。指定时,将设置配置变量“core.sharedRepository”,以便<code>$GIT_DIR</code>使用请求的权限创建下面的文件和目录。未指定时,Git 将使用 umask(2)报告的权限。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>该选项可以具有以下值,如果<code>group</code>没有给定的值,则默认为:</p></div></div><div class="doc-postil"><div class="c-markdown"><p><em style="font-style: italic;">umask</em> (or <em style="font-style: italic;">false</em>)</p></div></div><div class="doc-postil"><div class="c-markdown"><p>使用由 umask(2)报告的权限。<code>--shared</code>未指定时的默认值。</p></div></div><div class="doc-postil"><div class="c-markdown"><p><em style="font-style: italic;">group</em> (or <em style="font-style: italic;">true</em>)</p></div></div><div class="doc-postil"><div class="c-markdown"><p>使存储库组可写,(和g + sx,因为 git 组可能不是所有用户的主要组)。这用于放宽其他安全的 umask(2)值的权限。请注意,umask 仍然适用于其他权限位(例如,如果 umask 是<code>0022</code>,使用<code>group</code>不会从其他(非组)用户删除读取权限)。请参阅<code>0xxx</code>如何准确指定存储库权限。</p></div></div><div class="doc-postil"><div class="c-markdown"><p><em style="font-style: italic;">all</em> (or <em style="font-style: italic;">world</em> or <em style="font-style: italic;">everybody</em>)</p></div></div><div class="doc-postil"><div class="c-markdown"><p>与此相同<code>group</code>,但使存储库可供所有用户阅读。</p></div></div><div class="doc-postil"><div class="c-markdown"><p><em style="font-style: italic;">0xxx</em></p></div></div><div class="doc-postil"><div class="c-markdown"><p><code>0xxx</code>是一个八进制数,每个文件都有模式<code>0xxx</code>。<code>0xxx</code>将覆盖用户的
|
||
|
||
umask(2)的值(不仅是松开的权限<code>group</code>和<code>all</code>一样)。<code>0640</code>将创建一个群组可读的存储库,但不能对其他群组进行写入或访问。<code>0660</code>将创建一个对当前用户和组可读可写的回购,但其他人无法访问。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>默认情况下,配置标志<code>receive.denyNonFastForwards</code>在共享存储库中启用,以便您不能强制进行非快速转发。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>如果你提供了一个<code>directory</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>模板目录中名称不以点开头的文件和目录将<code>$GIT_DIR</code>在其创建后复制到其中。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>模板目录将是以下内容之一(按顺序):</p></div></div><div class="doc-postil"><div class="c-markdown"><ul class="ul-level-0 list-paddingleft-2" style="margin: 10px 0px 10px 20px;"><li><p>与<code>--template</code>选项一起提供的论据;</p></li></ul></div></div><div class="doc-postil"><div class="c-markdown"><ul class="ul-level-0 list-paddingleft-2" style="margin: 10px 0px 10px 20px;"><li><p><code>$GIT_TEMPLATE_DIR</code>环境变量的内容;</p></li></ul></div></div><div class="doc-postil"><div class="c-markdown"><ul class="ul-level-0 list-paddingleft-2" style="margin: 10px 0px 10px 20px;"><li><p>所述<code>init.templateDir</code>配置变量;要么</p></li></ul></div></div><div class="doc-postil"><div class="c-markdown"><ul class="ul-level-0 list-paddingleft-2" style="margin: 10px 0px 10px 20px;"><li><p>默认模板目录:<code>/usr/share/git-core/templates</code>。</p></li></ul></div></div><div class="doc-postil"><div class="c-markdown"><p>默认模板目录包含一些目录结构,建议使用“排除模式”(参见 gitignore [5])和示例钩子文件。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>示例钩子默认情况下都是禁用的,要启用其中一个示例钩子,可以通过删除其<code>.sample</code>后缀来对其进行重命名。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>有关钩子执行的更多信息,请参阅 githooks [5]。</p></div></div><div class="doc-postil"><div class="c-markdown"><h2>示例</h2></div></div><div class="doc-postil"><div class="c-markdown"><p>为现有的代码库启动一个新的 Git 存储库</p></div></div><div class="doc-postil"><div class="c-markdown"><pre><code class="language-Bash">$ cd /path/to/my/codebase
|
||
|
||
$ git init (1)$ git add . (2)$ git commit (3)</code></pre></div></div><div class="doc-postil"><div class="c-markdown"><p>1. 创建一个/path/to/my/codebase/.git目录。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>2. 将所有现有文件添加到索引。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>3. 将原始状态记录为历史记录中的第一个提交。</p></div></div></div> |