module GitCommands

Public Instance Methods

clone_args() click to toggle source
# File lib/lace/download_strategy.rb, line 91
def clone_args
  args = %w{clone}
  args << @uri << @target_folder
end
clone_repo() click to toggle source
# File lib/lace/download_strategy.rb, line 96
def clone_repo
  safe_system 'git', *clone_args
  @target_folder.cd { update_submodules } if submodules?
end
git_dir() click to toggle source
# File lib/lace/download_strategy.rb, line 70
def git_dir
  @target_folder.join(".git")
end
repo_modified?() click to toggle source
# File lib/lace/download_strategy.rb, line 78
def repo_modified?
  @target_folder.cd do
    result = `git status --porcelain`
    result.split("\n").any? do |line|
      line =~ /^ M/
    end
  end
end
repo_valid?() click to toggle source
# File lib/lace/download_strategy.rb, line 74
def repo_valid?
  quiet_system "git", "--git-dir", git_dir, "status", "-s"
end
reset() click to toggle source
# File lib/lace/download_strategy.rb, line 66
def reset
  safe_system 'git', "reset" , "--hard", "origin/HEAD"
end
submodules?() click to toggle source
# File lib/lace/download_strategy.rb, line 87
def submodules?
  @target_folder.join(".gitmodules").exist?
end
update_repo() click to toggle source
# File lib/lace/download_strategy.rb, line 62
def update_repo
  safe_system 'git', 'fetch', 'origin'
end
update_submodules() click to toggle source
# File lib/lace/download_strategy.rb, line 101
def update_submodules
  safe_system 'git', 'submodule', 'update', '--init'
end