在我们平常的代码提交时,一般会将代码提交到GitHub、gitee、gitlab等等这些仓库中,但是这些操作都是提交到远程仓库的,我们想要提交代码到自己的私服仓库的话就必须自己搭建一个远程仓库,拿gitlab来举例子,在centos中搭建一个gitlab仓库需要占用将近3G左右的内存。但是我们如果只是买一个个人服务器作为学习使用的话那么内存已经远远不够我们后续的使用了,所以我们可以使用Git裸仓库的形式来创建仓库

我们都知道git创建一个默认的仓库的命令为 git init 但是我们这样创建的仓库只能在我们的本地使用,如果我们想要将这个仓库分享给他人一起协作提交代码就无法实现了,这时候我们可以搭建一个Git裸仓库

Git裸仓库可以作为一个远程仓库,可以支持其他人拉代码和推代码,这样就解决了使用 git init初始化一个本地仓库的局限性,但是裸仓库仅仅只有推和拉的功能,并没有切换分支的功能,那么你可以将它看作是一个Master分支的Git仓库,但是不能切换分支罢了

初始化一个Git库仓库的命令为:git init --bare 仓库名

下面介绍一下裸仓库的常用命令:

提交文件还是一样的命令:git add .

假设我们现在有一个192.168.148.2的远程服务器

我们在服务器上创建好一个test裸仓库

然后我们进行克隆,这里一定是先克隆,因为直接拉是拉取不下来的

拉取:git clone ssh://[email protected]/root/test

添加文件:git add .

提交更改:git commit -m "更新readme"

推送到远程:git push origin master

可以看出,裸库的操作和普通的git并没有什么不同,仅仅是没有分支这个概念而已