如何为文档创建一个空分支

How to create an empty branch for documentation

我们办公室有几台 Linux 服务器。我想保留一些设置更改的记录。因此我认为将所有配置文件放在 GIT.

中是个好主意

我想要的设置如下: 裸存储库 --> configuration.git 每个服务器都有一个分支,我们在其中放置目录结构和配置文件。

我找不到如何执行此操作。我在某处用 --orphan 读了一些东西,但不知何故我最终得到了 master 和 MASTER 分支,而我的配置文件没有空分支。 我想要一个没有历史记录且没有 link 给 master 的空分支。

谁能指出我正确的方向?

请记住 git checkout --orphan 文档中的重要段落:

If you want to start a disconnected history that records a set of paths that is totally different from the one of , then you should clear the index and the working tree right after creating the orphan branch by running git rm -rf . from the top level of the working tree. Afterwards you will be ready to prepare your new files, repopulating the working tree, by copying them from elsewhere, extracting a tarball, etc.

要为 server1 启动一个新分支,运行

git checkout --orphan server1
git rm -rf .

从那里,像往常一样添加和提交,例如,

touch foo.conf
git add foo.conf
git commit -m 'Create foo.conf'

您必须执行以下操作:

  1. 创建您的 configuration 存储库
  2. 为服务器server01创建分支server01:

    git symbolic-ref HEAD refs/heads/server01
    rm -f .git/index
    git clean -fdx

  3. 重要提示:您现在必须向该分支添加并提交一些内容。

  4. 对下一个服务器重复 2.

之后你可以简单地做一个git checkout serverXX来改变分支。

如果您在 master 分支中没有初始提交,那么在此过程之后您将不会有 master 分支。 (但是您可以按照 2. 中描述的 master 分支进行操作。)

你可以用

查看结果

git log --graph --branches --decorate

它应该是这样的:

* commit: .... (server01)
  Author: Max Muster <max.muster@example.com>
  Date: Mon Feb 2 16:00:00 2015 +0100

    First commit of server01 branch

* commit: .... (server02)
  Author: Max Muster <max.muster@example.com>
  Date: Mon Feb 2 16:01:00 2015 +0100

    First commit of server02 branch

* commit: .... (server03)
  Author: Max Muster <max.muster@example.com>
  Date: Mon Feb 2 16:03:00 2015 +0100

    First commit of server03 branch

 [...]

* commit: .... (HEAD, server99)
  Author: Max Muster <max.muster@example.com>
  Date: Mon Feb 2 17:00:00 2015 +0100

    First commit of server99 branch

如果 Git 告诉您您仍在 master 分支中,那么这可能意味着您不仅在错误的分支中,而且在错误的 repository。如果我正确阅读了您的描述,您需要一个单独的存储库(和分支)用于您的服务器配置文件。请尝试以下步骤:

  1. 切换到包含您的配置文件的根目录。确保此目录 包含在您的 master 分支的仓库或任何其他已经存在的 git 仓库中。
  2. 键入 git init。这会将您的目录初始化为 Git 存储库
  3. 键入 git add ..。这会添加您目录中的所有配置文件以供 Git 跟踪。如果您只想要某些文件,可以使用 git add [filename].
  4. 添加它们
  5. 您现在可以开始使用 Git。默认分支是 master,但您可以创建任何您想要的分支,并提交您的更改。