【问题标题】:Git push to Staging ServerGit 推送到登台服务器
【发布时间】:2014-03-24 14:28:47
【问题描述】:

我正在尝试使用以下命令仅将我的暂存分支推送到暂存服务器上的裸仓库:

git push staging +staging:refs/heads/staging

但我收到一个致命错误:

you are on a branch yet to be born

如果我在上面的命令中将 staging 替换为 master ,它可以工作并将我的 master 分支/文件部署到 staging 服务器,但我的 master 分支是我的生产分支,我只想部署我的 staging 分支/文件。

有人可以帮忙吗?

请记住,我是设计师而不是开发人员,因此我们将不胜感激新手风格的答案;o)

更新

我想我最好解释一下我的工作流程...以防万一它对我的问题/新手情况有一些答案:

  • 我有我的 Origin @ Bitbucket - 包含我的整个项目
  • 我将我的 repo 克隆到我的本地 WAMP 服务器进行开发(我在我的开发分支上工作)
  • 我有三个主要分支:master(我的生产分支 j / 实时服务器)、develop(我的本地分支 / WAMP 服务器)和 staging(我的客户端验收分支 / staging 服务器)

我将整个项目推送到 Bitbucket 没有问题,但我正在努力将暂存分支下的文件推送到我的暂存服务器。

注意:在我的登台服务器 git 上,我正在使用接收后挂钩: GIT_WORK_TREE=/path/to/site git checkout -f

我可能尝试这样做完全错误,但我可以将暂存分支上的代码部署到暂存服务器?!

【问题讨论】:

  • 我可能会错过一些东西,但你试过git push staging staging

标签: git push bitbucket staging


【解决方案1】:

你应该做的是:

  • 推那个分支
  • 建立本地和远程的跟踪关系

这是在一个命令中完成的:

git push -u staging staging

在最初的第一次推送之后,以后的推送可以通过一个简单的方式完成:

git push

在“Why do I need to explicitly push a new branch?”查看更多信息。

请注意,“最佳做法”(或至少是更好的做法)是不要将远程 repo 引用 (staging) 和分支 (staging) 命名为同名,只是为了更清楚地说明这些git push 命令 'staging' 是什么。

【讨论】:

  • 感谢 VonC,我已按照建议添加了上游跟踪,但是当我推送暂存分支(到暂存)时,它显示“一切都是最新的”。查看暂存站点时,没有上传任何文件 - 我只是获取目录索引。
  • @Ian 您希望文件在哪里更新? git push 推送版本控制数据,它不更新文件。也许您想在服务器上创建一个接收后挂钩,以便推送将触发更新您的登台站点。这个答案可能会有所帮助:stackoverflow.com/questions/21807396/…
  • @janos 谢谢,我已经有一个像这样的 post-receive 钩子: (GIT_WORK_TREE=/path/to/site git checkout -f) 所以我希望测试 index.html 文件出现在站点根目录。
  • @Ian 在裸仓库(服务器端,你要推送到的地方),你能做一个git branch -avvv 和一个git log --graph --oneline --branches --all,看看你是否看到一个staging 分支?
  • @VonC,是的,运行 git branch -avvv 显示主分支和暂存分支,在我的主分支上有一个 astrix。仅供参考:我还用一些工作流程背景信息更新了我原来的问题,以防万一;o)
【解决方案2】:

已解决

通过更新我的 git post-receive 钩子,我所面临的问题已经完全解决:

来自 GIT_WORK_TREE=/path/to/site git checkout -f

到 GIT_WORK_TREE=/path/to/site git checkout -f staging

谁会想到这会是一件如此简单的事情;o)

非常感谢 @VonC 提供的所有帮助 - 不知何故,你带领我走上了正确的道路。

【讨论】:

  • 好收获。 +1 默认情况下,master 已签出
猜你喜欢
  • 2011-12-23
  • 1970-01-01
  • 2020-04-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-06-04
相关资源
最近更新 更多