“修改:Gemfile.lock”,为什么?

时间:2011-03-25 11:16:36

标签: ruby-on-rails git ruby-on-rails-3 gem git-branch

当我在我的子分支上'git status'时,我经常看到“ modified:Gemfile.lock ”,但我从来没有碰过这个文件,为什么git总是告诉我它是改性??

我正在Ubuntu机器下开发Rails 3应用程序。

2 个答案:

答案 0 :(得分:9)

我认为这是因为你跑了

bundle install

它将更改Gemfile.lock以准确告诉您项目正在使用的每个gem的哪些版本,以便在出现故障时,您可以追溯到之前使用的gem版本。

答案 1 :(得分:3)

在Mac OS和Ubuntu上进行开发时,我看到同样的事情。 当我将代码拉到在Mac机器上创建了Gemfile.lock的Ubuntu机器上,并在运行rails服务器后,我得到Gemfile.lock修改:

diff --git a/Gemfile.lock b/Gemfile.lock
index 7fcc61b..5f06101 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -113,7 +113,7 @@ GEM
     faraday (0.5.3)
       addressable (~> 2.2.2)
       multipart-post (~> 1.0.1)
-      rack (>= 1.1.0, < 2)
+      rack (< 2, >= 1.1.0)
     formtastic (1.2.3)
       actionpack (>= 2.3.7)
       activesupport (>= 2.3.7)
@@ -126,9 +126,9 @@ GEM
       haml (~> 3.0)
       railties (~> 3.0)
     heroku (1.13.7)
-      json_pure (>= 1.2.0, < 1.5.0)
+      json_pure (< 1.5.0, >= 1.2.0)
       launchy (~> 0.3.2)
-      rest-client (>= 1.4.0, < 1.7.0)
+      rest-client (< 1.7.0, >= 1.4.0)
     heroku_san (1.0.7)
       heroku
     hpricot (0.8.3)

看起来不是必要的更改,只是重新排序版本限制。但很烦人。 我通常

git checkout -- Gemfile.lock