module GitCommands
Public Instance Methods
Source
# File lib/lace/download_strategy.rb, line 88 def clone_args args = %w[clone] args << @uri << @target_folder end
Source
# File lib/lace/download_strategy.rb, line 93 def clone_repo safe_system 'git', *clone_args @target_folder.cd { update_submodules } if submodules? end
Source
# File lib/lace/download_strategy.rb, line 67 def git_dir @target_folder.join('.git') end
Source
# File lib/lace/download_strategy.rb, line 75 def repo_modified? @target_folder.cd do result = `git status --porcelain` result.split("\n").any? do |line| line =~ /^ M/ end end end
Source
# File lib/lace/download_strategy.rb, line 71 def repo_valid? quiet_system 'git', '--git-dir', git_dir, 'status', '-s' end
Source
# File lib/lace/download_strategy.rb, line 63 def reset safe_system 'git', 'reset', '--hard', 'origin/HEAD' end
Source
# File lib/lace/download_strategy.rb, line 84 def submodules? @target_folder.join('.gitmodules').exist? end
Source
# File lib/lace/download_strategy.rb, line 59 def update_repo safe_system 'git', 'fetch', 'origin' end
Source
# File lib/lace/download_strategy.rb, line 98 def update_submodules safe_system 'git', 'submodule', 'update', '--init' end