summaryrefslogtreecommitdiff
path: root/lib/bundler/source
diff options
context:
space:
mode:
authorJean Boussier <jean.boussier@gmail.com>2018-09-26 14:57:54 +0200
committerJean Boussier <jean.boussier@gmail.com>2018-09-27 15:53:27 +0200
commit2264db9b12cf7ef74163b711baea95cfd91411e4 (patch)
treee809ff7a13a03f5ba70fcb1b1ee7c7e00b1333bd /lib/bundler/source
parent8501b1e3608579acf53a4978b62c0d8891d23005 (diff)
downloadbundler-2264db9b12cf7ef74163b711baea95cfd91411e4.tar.gz
Avoid fetching an rebuilding git gems when it's not necessary
Diffstat (limited to 'lib/bundler/source')
-rw-r--r--lib/bundler/source/git.rb6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/bundler/source/git.rb b/lib/bundler/source/git.rb
index 0b00608bdd..33f0af89ee 100644
--- a/lib/bundler/source/git.rb
+++ b/lib/bundler/source/git.rb
@@ -260,7 +260,11 @@ module Bundler
end
def requires_checkout?
- allow_git_ops? && !local?
+ !cached_revision_checked_out? && allow_git_ops? && !local?
+ end
+
+ def cached_revision_checked_out?
+ cached_revision && cached_revision == revision && install_path.exist?
end
def base_name