3

我的 rails 应用程序位于 svn 存储库中,但其中一些插件是通过 git 安装的,后来添加到 svn 存储库中。如何更新这些插件?我似乎无法让脚本/插件更新来做任何事情。我真的很想更新 activemerchant 以摆脱 Inflector 警告。

4

6 回答 6

2

如果你已经有一个插件的静态副本签入到 Subversion,通过 更新它可能会很痛苦script/plugin,所以这就是我最终要做的,以便在一个 Subversion 提交中将它从静态安装切换到 Git 签出:

git clone git://github.com/foo/bar.git ~/foobar
mv ~/foobar/.git rails_app/vendor/plugins/foobar/.git
rm -rf ~/foobar
cd rails_app/vendor/plugins
git reset --hard

然后确保将.git所有其他已更改的内容添加到 Subversion 项目中,您将是最新的。您可以使用其他 git 命令来拉取更新、移动到不同的分支等。然后在它们处于您想要的状态时再次签入。

于 2010-03-10T19:45:15.057 回答
2

如果您没有对插件进行任何本地更改,并且您不需要跟踪更新将带来的更改,您可以再次运行,如果需要script/plugin install,可以传入。--force例如:

script/plugin install --force git://github.com/dchelimsky/rspec.git
于 2008-10-18T18:25:16.547 回答
1

在这种情况下我会做一件事,我删除插件目录然后我提交给 SVN,这将删除 repo 中的旧插件。(我通常将它移动到 tmp 目录中,以防万一,等新的工作正常后将其延迟)然后我重新安装插件的新版本,并再次提交。简单的。

于 2010-11-17T17:44:57.363 回答
0

为了让 Git 能够将存储库识别为 Git 存储库,您需要将.git子目录及其下的所有内容也添加到 Subversion。否则,插件看起来就像另一堆源代码,Git 会说它“不是 Git 存储库”。

于 2008-10-27T18:41:57.517 回答
0

您应该能够导航到插件的目录并点击: git pull 。我很确定script/install plugin只是从 git repo 中检查代码。

于 2008-10-14T08:11:55.633 回答
0

遇到同样的情况并使用了这个解决方案:将回形针作为插件安装在 svn repo 中,作为我应用程序的一部分。现在我想改用最新版本,并且没有更改任何回形针插件,因此我可以轻松地将其从 app/svn 中删除,并将其安装为 gem。完毕。

于 2009-09-25T08:59:53.287 回答