【问题标题】:how can I create a remote git repository that accepts pushes into the working tree?如何创建一个接受推送到工作树的远程 git 存储库?
【发布时间】:2012-06-04 08:24:00
【问题描述】:

我正在尝试拥有一个共享的远程存储库,团队成员可以在其中推送他们的更改并在暂存环境中查看它们。

我看过一些选项,但我仍然卡住了。裸存储库没有工作树,并且我尝试了将 receive.denyCurrentBranch 设置为 false 的普通存储库(这让我可以推送到远程),但是在您登录服务器并执行 git reset 之前,工作树仍然不会更新。

理想情况下,我希望能够只推送到存储库(一个命令)并查看实时更新的更改。

【问题讨论】:

  • 这不是一个好的网站部署工作流程。提供带有钩子的裸仓库。见ryanflorence.com/simple-git-deployment
  • this one 的副本。 OP 似乎不知道在远程存储库中使用钩子的必要性,所以我犹豫是否将此问题标记为重复关闭。
  • 我没有在问题中提及,因为我认为这无关紧要,但除了其他人之外,我确实有一个裸仓库(来源)。感谢所有为我指明正确方向的人。

标签: git repository push staging


【解决方案1】:

您需要在远程存储库上设置一个post-receive 挂钩,以将更改拉取到工作树。使用裸存储库,您可以git-archive HEAD 并将存档解压缩到目录,而不是更新工作树。

参考:Git Hooks; git-archive

【讨论】:

    猜你喜欢
    • 2011-05-05
    • 1970-01-01
    • 2018-06-24
    • 2010-10-25
    • 1970-01-01
    • 2017-10-01
    • 1970-01-01
    • 2021-11-17
    相关资源
    最近更新 更多