Module: Integrity::SCM

Defined in:
lib/integrity/scm.rb,
lib/integrity/scm/git.rb,
lib/integrity/scm/git/uri.rb

Defined Under Namespace

Classes: Git, SCMUnknownError

Class Method Summary collapse

Class Method Details

.new(uri, *args) ⇒ Object



5
6
7
# File 'lib/integrity/scm.rb', line 5

def self.new(uri, *args)
  scm_class_for(uri).new(uri, *args)
end

.scm_class_for(uri) ⇒ Object

Raises:



14
15
16
17
# File 'lib/integrity/scm.rb', line 14

def self.scm_class_for(uri)
  return Git if uri.scheme == "git" || uri.path =~ /\.git\/?/
  raise SCMUnknownError, "could not find any SCM based on URI '#{uri.to_s}'"
end

.working_tree_path(uri) ⇒ Object



9
10
11
# File 'lib/integrity/scm.rb', line 9

def self.working_tree_path(uri)
  scm_class_for(uri).working_tree_path(uri)
end