使用远程存储库时遇到问题。我做git clone <URL>
就好了。
问题是当我运行bundle
时。我收到很多错误。使用bundle update
修复了这些错误,因为它安装了所有的宝石,然后我可以运行一切。问题是我的Gemfile.lock文件被更改了,它作为一个要在git存储库中提交的文件(它不应该,因为它会弄乱远程存储库的Gemfile.lock文件)。现在我无法将Gemfile .lock推送到远程存储库,因为它会破坏所有内容。但奇怪的是,这个Gemfile.lock没有包含在.gitignore文件中...所以任何想法我怎么能克服这一点,或者有人可以向我解释究竟发生了什么?
答案 0 :(得分:1)
当您运行bundle
时,bundler将使用Gemfile.lock
中列出的宝石。 bundle update
更新Gemfile.lock
以获取Gemfile
中列出的所有宝石中的最新宝石,同时仍然满足所有依赖项。
您也可以在特定的gem上运行bundle update
,这将限制Gemfile.lock
对所述gem的依赖关系的更改。
您需要更清楚地了解您收到的错误?他们是依赖关系吗?或者你不能用原生扩展构建一个gem?或者是其他东西?你使用的是gemsets - 如果没有,那可能对防止宝石碰撞有用。
Gemfile.lock
确实存在问题吗?您是存储库的贡献者吗?
此外,bundler
时不时地更新。在运行bundler
之前,您可能希望更新bundle
版本。
gem update bundler