【问题标题】:How should I set up my git remote repo to deploy websites?我应该如何设置我的 git 远程仓库来部署网站?
【发布时间】:2012-03-08 16:57:55
【问题描述】:

我正在尝试找出使用 git 部署网站的最佳方式,我在服务器上设置了一个裸仓库,以便可以将本地仓库推送到它,它工作正常,但我有几个问题:

假设我的 repo 位于服务器的 public_html 文件夹中,如果我使用 git init --bare 创建它,我只能推送我的本地 .git 文件夹,这样我就无法访问我的工作目录文件,如果我使用git init 创建一个常规仓库,我每次尝试推送时都会收到警告,说我不应该推送到非裸仓库。所以我该怎么做?例如,Github 确实存储了我的工作文件,但我没有收到奇怪的警告消息。

提前致谢!

【问题讨论】:

    标签: git github repository git-push


    【解决方案1】:

    真的有两个选择:

    1) 定期从您的裸仓库中提取实际网站(例如,通过 cron)

    2) 将实际网站从您的主存储库中拉取(假设它可以通过拉取访问,并且更改最终在主库(或类似)中,并且您永远不会向主库提交尚未准备好的东西)

    3) 使用裸仓库中的钩子在推送完成后在真实位置执行git pull。如果你走这条路,请务必取消设置 GIT_DIR 环境变量,该变量最终将在钩子的环境中设置。

    【讨论】:

    • 感谢您的回答,我最终使用了您的第一个建议并进行了一些修改,我在我的服务器和 public_html 文件夹上设置了一个存储库文件夹,其中只有裸存储库我只是手动拉出其中任何一个的主分支以使其可访问,
    猜你喜欢
    • 2010-10-13
    • 2018-12-28
    • 1970-01-01
    • 1970-01-01
    • 2011-04-01
    • 2013-03-11
    • 1970-01-01
    • 2011-01-21
    • 1970-01-01
    相关资源
    最近更新 更多