Git:从裸机或非裸机导入

时间:2012-12-15 20:51:14

标签: git repository git-bare

我一直在家庭本地服务器(Mac Mini)中托管裸存储库。

它的执行速度非常慢(可能是由于缺少大文件的git优化)

所以为了解决这个问题,我想把我的裸仓库转移到BitBucket私有存储库。试试吧。

当我尝试从裸存储库导入bitbucket时。它有许多问题,例如它只导入我的暂存分支。

当我做的时候

git branch

在git bare repo目录下 它只显示我的分支列表中的分段。 然后我做git fsck --full。 它显示了许多与pack相关的错误。 另一个问题是,在git bare repo目录中,我找到了另一个与repo目录本身同名的文件夹。例如:我的repo目录名是repo.git /。这将继续repo.git / repo.git / repo.git / repo.git。

从这些问题来看,我认为我严重搞砸了裸机库。所以我想删除这个裸仓库并从我的普通/非裸仓库中导入到bitbucket。

所以我的问题是: 从裸存储库导入和从非裸存储库导入是否有任何差别,即使是任何小的差异?

提前谢谢。

1 个答案:

答案 0 :(得分:4)

  

从裸存储库导入和从非裸存储库导入是否有任何差别,即使是任何小的差异?

不,只要您的裸仓就拥有所有分支机构。

从(非裸)回购推出explained here

  

如果需要,可以一次将几个分支推送到Bitbucket存储库。为此,请执行以下操作:

  • 列出所有分支以确保您拥有所需内容:
    git branch -a
  • 确保本地存储库中的远程origin指向Bitbucket 例如,如果您使用ssh与Bitbucket,您将使用以下内容:
    git remote set-url origin ssh://git@bitbucket.org/youraccount/reponame.git
  • 然后将所有分支推送到Bitbucket: git push -u origin --all