2

我们使用 Git Tower 来管理我们的 git 存储库,并且我们希望设置能够rake db:migrate在我们拉下新更新时自动运行。我已将合并后的 git 钩子修改为如下所示:

#!/bin/bash
bundle exec rake db:migrate

如果我从命令行运行它,它工作得很好。但是,如果我尝试在 Tower 本身中运行 git pull,我会收到以下错误:

/Library/Ruby/Gems/1.8/gems/bundler-1.1.4/lib/bundler/spec_set.rb:90:in 'materialize': Could not find sass-3.2.1 in any of the sources (Bundler::GemNotFound)

有没有人有让 Tower 在 git pull 上运行自动迁移的经验?

4

1 回答 1

0

把它放在一个脚本中:

#!/bin/bash
bundle exec rake db:migrate

然后在 .git/hook/post-merge 文件中:

exec <path/to/script/based/on/repo/directory>/<script_name> &

你需要 & 在行尾。hooks 脚本必须立即返回,否则 git 会不高兴。

某人

于 2012-09-07T18:21:53.863 回答