0

我有一个运行我们的 CMS 的 DEV 服务器,我想从 CMS 安装中的存储库中拉取并推送到该存储库 - 但我收到错误,因为我试图推送到非裸存储库(我已经克隆了这个远程存储库本地)。

但据我了解,裸存储库实际上并不包含文件,这显然会成为查看 CMS 的问题 - 不确定这是否正确?

抱歉,如果这很容易,我已经在这里阅读了很多答案,但是当远程需要文件时,我仍然无法理解如何设置我的本地和远程存储库。

另外,我正在使用 Tower,因为我对命令行中的 git 不太感兴趣。

任何帮助或建议将不胜感激。

干杯

4

2 回答 2

0

使用 Git 管理网站对如何完成有很好的了解。

这个想法是推送到一个裸仓库(一个没有工作目录的仓库),并在post-receive挂钩中签出到您的 web 文件夹。一旦你有了它,你可以用一个简单的 将你的更新推送到裸仓库git push <remote_name>,这将更新你的 web 根目录。

使用该设置,您将拥有:

  • 您的本地仓库 - 您可以在其中工作的完全正常的 git 仓库
  • 服务器的裸仓库 - 所有 git 数据,但没有签出文件
  • 服务器的 Web 根/CMS 文件夹 - 不是 git 存储库,但包含一个已签出的修订。

这样可以将 git 内容排除在您的 Web 根目录之外,因此它只包含您的 CMS 文件。让事情变得更干净。

于 2011-10-09T08:48:34.200 回答
0

Hi I agree with you that getting you head around git is a steep learning curve. Having been through it in recent memory. We had a guy called Jerremy skinner who knows his stuff - his video guide to getting going with git is here http://www.ava.co.uk/git - the first one is about 5 mins.

于 2011-10-09T13:30:17.013 回答