我有一个生产服务器,git-1.7.3.4_centos5.2描述为here,我有一台带git 1.7.7.1的本地机器。我需要的是本地服务器上的副本,我可以在其中开发站点并将其上载到生产服务器。还有另一个人可以修改内容,所以我也需要提取更改。我怎样才能用git解决这个问题? (现在最实际的代码在我的本地机器上。)
我做了一些测试:我克隆了一个空的仓库,之后我修改了服务器上的仓库。我无法使用远程/下载(git gui)下载它,但结帐时我获得了成功。推动也不起作用。我怎样才能使它们运作?
答案 0 :(得分:1)
您应该定义两个遥控器:
我需要的是本地服务器上的副本,我可以在其中开发网站并将其上传到生产服务器
这是一个简单的
git clone http://www.your_prod_server.com/git/your_bare_repo.git
那将克隆repo并定义一个名为“origin”的远程。你将能够推动它,因为它是一个裸露的回购 请参阅“all about "bare" repos -- what, why, and how to fix a non-bare push” 另请参阅“GIT: after push, remote repo shows files as deleted”以了解推送到非裸仓库的危险:
当您在Git中推送到远程仓库时,它不会更新该远程仓库的工作副本 这意味着工作副本将与您推送的最后一个版本不同步。
还有另一个人可以修改内容,所以我也需要提取更改。
你需要添加一个指向“其他人的回购地址”的遥控器
git remote add otherguy http://otherguy_server/other_guy_repo
即使该同事的回购不是裸露的,您也可以从中获取,在回购中恢复他的更改,并将它们合并到您当地的分支机构中。