2012-07-08 77 views

回答

9

需要在远程设置存储库,但不应该手动复制文件。至少,你没有得到它的历史。

首先,ssh到你的远程和做到这一点:

mkdir your_repo.git 
cd your_repo.git 
git init --bare 

在目录名的.git完全是可选的。 --bare选项使存储库没有索引,因此可以推出。

然后你回到你的本地库,并添加远程:

git remote add remote_name [email protected]:path/to/your_repo.git 

你所有的设置。所有你需要做的是:

git push remote_name 
+0

谢谢,如果我想我的远程不是裸回购,也可能吗?谢谢 – Ryan 2012-07-08 11:30:52

+1

一般来说,这不是一个好主意。我不确定它是否完全可能,但即便如此,推向非裸仓库意味着在该仓库中,所有的东西都需要合并而不会造成冲突,但这并不能保证。另见[here](http://stackoverflow.com/questions/1764380/push-to-non-bare-repository),[here](http://gitready.com/advanced/2009/02/01/push -to-only-bare-repositories.html)和[这里](http://sitaramc.github.com/concepts/bare.html) – Shahbaz 2012-07-08 11:52:53

1

二你有SSH访问,你可以复制回购(是的,有SCP),但只复制一个文件:a git bundle

从那里,您可以将该捆绑包作为裸回购(将一个文件作为您可以克隆的回购站)克隆到您的远程服务器上,并将其用作远程回购(可以推送到远程裸回购)。

相关问题