如何为文档创建一个空分支
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'
您必须执行以下操作:
- 创建您的
configuration
存储库
为服务器server01
创建分支server01
:
git symbolic-ref HEAD refs/heads/server01
rm -f .git/index
git clean -fdx
重要提示:您现在必须向该分支添加并提交一些内容。
对下一个服务器重复 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。如果我正确阅读了您的描述,您需要一个单独的存储库(和分支)用于您的服务器配置文件。请尝试以下步骤:
- 切换到包含您的配置文件的根目录。确保此目录 不 包含在您的 master 分支的仓库或任何其他已经存在的 git 仓库中。
- 键入
git init
。这会将您的目录初始化为 Git 存储库
- 键入
git add ..
。这会添加您目录中的所有配置文件以供 Git 跟踪。如果您只想要某些文件,可以使用 git add [filename]
. 添加它们
- 您现在可以开始使用 Git。默认分支是 master,但您可以创建任何您想要的分支,并提交您的更改。
我们办公室有几台 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'
您必须执行以下操作:
- 创建您的
configuration
存储库 为服务器
server01
创建分支server01
:git symbolic-ref HEAD refs/heads/server01
rm -f .git/index
git clean -fdx
重要提示:您现在必须向该分支添加并提交一些内容。
对下一个服务器重复 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。如果我正确阅读了您的描述,您需要一个单独的存储库(和分支)用于您的服务器配置文件。请尝试以下步骤:
- 切换到包含您的配置文件的根目录。确保此目录 不 包含在您的 master 分支的仓库或任何其他已经存在的 git 仓库中。
- 键入
git init
。这会将您的目录初始化为 Git 存储库 - 键入
git add ..
。这会添加您目录中的所有配置文件以供 Git 跟踪。如果您只想要某些文件,可以使用git add [filename]
. 添加它们
- 您现在可以开始使用 Git。默认分支是 master,但您可以创建任何您想要的分支,并提交您的更改。