使用git使远程目录保持最新

时间:2013-10-19 21:19:34

标签: git

我已经设置了一个远程目录并在其中初始化了.git。

我可以推送到这个仓库但我需要它将项目拉入目录以模仿init我的本地仓库的结构。

这是我需要运行post-receive钩子的地方吗?如何从目录中的本地.git中提取项目文件?

感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

使用git push可以将git存储库中的更新推送到不同的遥控器。

当您推送到远程时,您所做的就是将更改发送到git存储库。如果您希望更改目录结构,则需要以某种方式检查最新版本的代码。

您可以使用post-receive挂钩来完成此操作。您需要快进远程分支。请注意,在post receive hook完成之后,客户端才会断开连接。

以下是您正在寻找的内容的简要概述:http://toroid.org/ams/git-website-howto

请参阅此SO帖子:Git Post-Receive Hook for Website Staging

此网站似乎也很有用:http://githooks.com/

答案 1 :(得分:0)

在名为.git/hooks的{​​{1}}中创建一个钩子。该文件应包含以下内容......

post-receive

尝试使用不是#!/bin/sh GIT_WORK_TREE=/path/to/where/you/want/working/files git checkout -f 的git仓库(设置时使用--bare,然后将工作目录放在其他位置),我遇到了一些问题

示例:

git init --bare