文件<project> .git来自哪里?

时间:2017-01-07 07:01:20

标签: git git-clone

我已经初始化了几个本地git repos,但没有一个有<project>.git文件;只有一个.git目录。我想将其中一个存储库克隆到本地网络上的另一台计算机,但clone似乎需要一个<project>.git文件。该文件是如何生成的?

3 个答案:

答案 0 :(得分:1)

要拥有project.git(而不是project/.git),您需要使用git clone --baregit init --bare

这会创建一个 bare repository ,一个只有.git内容且没有工作树。

答案 1 :(得分:1)

如果您只需要将项目复制到包含所有文件和git数据的其他计算机,那么只需复制您拥有.git存储库的文件夹即可。 .git目录包含git的元数据(以及所有版本历史记录)。这将包含项目的完整工作树,其中包含git版本历史记录。这称为非裸存储库。

非裸存储库是另一个存储库的克隆,加上本地状态,例如.git / HEAD,它指示检出哪个修订版,索引用于标识已签出树中已更改的内容并帮助准备提交对象等。

裸仓库是project.git,不包括工作树和.git文件夹。使用git init --baregit clone --bare创建的裸存储库基本上是用于共享的。如果您与开发人员团队合作,并且需要一个位置来共享对repo的更改,那么您可以在集中的位置创建一个裸存储库,所有用户都可以在其中推送他们的更改。

因此,如果您需要bare个回购,即project.git,则需要创建一个。目录中的project.git.git文件夹相同,其中包含git元数据和版本历史记录。

答案 2 :(得分:0)

好像你正在尝试托管一个git服务器

git documentation to setup git server