我在本地机器上有一个现有的Git存储库。我想将该存储库移动到我的web服务器上,然后在本地计算机上使用git clone
,以便从服务器上签出我的存储库。我计划在我的本地机器上进行开发,并将更新推送回服务器。我可以通过ssh从我的本地机器到服务器,但反之亦然。我该怎么做呢?我认为应该以某种方式使用git bundle,尽管当我试图在我的服务器上git clone
我的包时,我得到了一个“警告: remote HEAD引用了不存在的引用,无法检出”错误。我的本地机器运行的是OS X,服务器运行的是Linux。
发布于 2010-10-09 06:39:25
在Linux服务器上,在新目录中执行以下操作:
git init --shared --bare
然后在您的本地计算机上:
git remote add origin server:path/to/repo
git push --all origin
在此之后,服务器将拥有存储库的完整副本,您将能够对其进行推送和拉取。当您在本地已经有一个克隆时,不需要从服务器上签出另一个克隆。
发布于 2011-09-11 21:41:31
使用"git push --all origin“代替"git push origin master”,这样您就可以在所有分支上移动,而不仅仅是主分支。
发布于 2010-10-09 06:38:02
这样如何:
local> cd my_repo.git
local> git remote add origin user@host:/path/to/my_repo.git
local> git config branch.master.remote origin
local> git config branch.master.merge refs/heads/master
local> git push origin master
它会将数据从本地存储库发送到服务器。然后执行以下操作:
local> cd ..
local> git clone user@host:/path/to/my_repo.git my_repo2.git
然后你就可以从服务器上克隆了。满意后,您可以删除原始存储库,并可能重命名第二个存储库。
https://stackoverflow.com/questions/3894719
复制相似问题