git存储库是否可复制?

时间:2015-10-26 17:45:25

标签: git

当您git initgit clone文件夹时,该文件夹将被标记为存储库,并且它将包含名为.git的不可见(在Windows中)文件夹。

如果我只是将存储库+ .git文件夹的内容移动到另一个文件夹或另一台计算机上会导致我的本地存储库出现任何问题?

3 个答案:

答案 0 :(得分:2)

本地路径

只有当您引用系统本地的遥控器时,才会遇到此AFAIK的问题。例如,

[foo@bar ~]$ cd /tmp/
[foo@bar tmp]$ mkdir git1
[foo@bar tmp]$ cd git1/
[foo@bar git1]$ git init --bare
Initialized empty Git repository in /tmp/git1/
[foo@bar git1]$ cd ..
[foo@bar tmp]$ git clone file:///tmp/git1/ git2
Cloning into 'git2'...
warning: You appear to have cloned an empty repository.
Checking connectivity... done.
[foo@bar tmp]$ cd git2/
[foo@bar git2]$ git remote -v
origin  file:///tmp/git1/ (fetch)
origin  file:///tmp/git1/ (push)
[foo@bar git2]$ 

如果您移动回购,这显然会破坏您的遥控器。否则我认为你应该没事。

config警告

另请注意,如果您为了与自己以外的人共享代码而执行此操作,则所有本地git config值都将被传输,因为它们存储在{{1 }}。因此,如果只是复制文件夹并将其提供给其他人,他们将拥有您的所有值(即,如果它们未全局设置),例如您的电子邮件,姓名,编辑器首选项等,他们必须适当地重置它们。

答案 1 :(得分:0)

在我之前的工作中,我们有一个包含二进制文件的回购邮件非常庞大。克隆它需要将近一个小时,所以当新员工加入时,我们将整个目录(内容+ .git dir)复制到USB驱动器上并传递它。我们从未遇到任何问题。

答案 2 :(得分:0)

git管理repo所需的所有信息都存储在.git文件夹中(实际上就是repo)。移动它会没事的。您可能遇到的唯一问题是以这种方式在机器之间移动,您可能会丢失全局git配置设置。