我们正在使用git存储库来存储我们的项目。我们的分支脱离了原来的分支。但是现在我们想要创建一个小的新项目来跟踪一些文档。为此,我们需要创建一个新的空分支来开始存储我们的文件,并且我希望网络上的其他用户克隆该分支。
我们怎么做呢?
我试过一些方法,但都没用。
$ mkdir proj_doc; cd proj_doc
$ git init
$ git add .
$ git commit -m 'first commit'
$ git br proj_doc
$ git co proj_doc
$ git br -d master
$ git push origin proj_doc
它似乎推了分支,但当我进行取回或拉取时,它从其他分支下载信息,然后我也从其他项目获得一些额外的文件。最好的解决办法是什么?
假设你有一个带有文件/目录的主分支:
> git branch
master
> ls -la # (files and dirs which you may keep in master)
.git
directory1
directory2
file_1
..
file_n
如何一步一步地创建一个空分支:
Git checkout -orphan new_branch_name
执行以下命令前请确认所在目录正确。
ls -la |awk '{print $9}' |grep -v git |xargs -I _ rm -rf ./_
Git rm -rf。
触摸new_file
Git添加了new_file
Git commit -m '在新分支中添加第一个文件'
Git push origin new_branch_name
在步骤2中,我们简单地在本地删除所有文件,以避免与新分支上的文件和保留在主分支中的文件混淆。
然后,我们在步骤3中解除所有这些文件的链接。最后,第4步和之后将使用新的空分支。
一旦你完成了,你可以很容易地在你的分支之间切换:
git checkout master
git checkout new_branch