相关疑难解决方法(0)

如何通过git push将多个分支部署到不同的目录?

在制作中,我维护了两个站点 - 测试和发布.每个都通过软链接指向不同的目录(例如)

beta_public_html -> /home/scott/myapp/trunk/public
public_html      -> /home/scott/myapp/branches/1.2.3/public
Run Code Online (Sandbox Code Playgroud)

我是一个长期的svn用户,转向git.我习惯通过svn更新部署并更改新分支上的软链接,事情非常简单.

现在我转向git.我仍然需要两个软链接(它是使用Passenger的Rails应用程序),但现在我希望它们指向两个不同的git分支("beta"和"release",比如说).我希望能够通过git push(或git pull)更新它们.

问题第1部分:我不确定最好的方法.

我开始这样做的方法是只部署到两个不同的遥控器,例如

git push ssh://scott@x.com/home/scott/myapp-beta beta
git push ssh://scott@x.com/home/scott/myapp-release release
Run Code Online (Sandbox Code Playgroud)

但这不起作用,因为默认情况下push不会更新工作树.

所以我进入远程目录并第一次运行git reset --hard,它会拉动工作树.但我再次推动,我无法得到新的推动 - 它只是停留在最初的一个.

(顺便说一句,请注意,我似乎无法推送到"myapp-beta.git" - 失败了,我必须推送到目录名.我担心这是问题的一部分,但我不知道我在这里做错了什么.)

所以,如果问题1的答案是我的方法没问题,问题第2部分:我实际上做了什么错了?如果有我应该使用的钩子,有人可以指向我吗?

(对问题1的回答说"运行这7个手动步骤"将不是一个非常有用的答案,因为svn checkout + ln -s是两个步骤.)

谢谢.我想回到编写代码.

git ruby-on-rails

6
推荐指数
1
解决办法
4109
查看次数

标签 统计

git ×1

ruby-on-rails ×1