码迷,mamicode.com
首页 > 其他好文 > 详细

辛星浅析git init中的--bare选项,也就是裸仓库

时间:2015-05-06 06:56:48      阅读:159      评论:0      收藏:0      [点我收藏+]

标签:git   版本控制   辛星   裸仓库   bare   

  通常如果一个仓库作为远程仓库使用的时候,我们初始化的时候通常是git  init  --bare,首先解释一下这个bare,它翻译成汉语即"裸的",他之会生成一类文件,用于记录版本库历史记录的.git目录下面的文件,而不会包含实际项目源文件的拷贝,因此该版本库不能称为工作目录(working  tree)。

  当不使用--bare选项时,就会生成.git目录以及其下的版本历史记录文件,这些版本记录文件就存放在.git目录下,而使用--bare选项时,就不再生成.git目录,而只是生成.git目录下面的版本历史记录文件,这些版本历史记录文件也不再存放在.git目录下面,而是直接存放在版本库的根目录下面。

   使用git init初始化的版本库用户也可以在该目录下执行所有git方面的操作,但是别的用户在将更新push上来的时候容易出现冲突。如果远端仓库正在使用某个分支,而我们又要把更新提交到这个分支上,就可能会出错。当然,如果我们是向远程仓库中的空闲分支上提交,还是不会有问题的。

    我们通常的解决办法就是使用git  init  --bare来创建一个裸仓库,之所以叫做裸仓库是因为这个仓库只保存git历史提交的版本信息,而不允许用户在上面进行各种git操作,如果我们进行其他操作的话,会得到诸如This  operation  must  be  run  in  a  work  tree。

  

辛星浅析git init中的--bare选项,也就是裸仓库

标签:git   版本控制   辛星   裸仓库   bare   

原文地址:http://blog.csdn.net/xinguimeng/article/details/45515545

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!