module Luban::Deployment::Application::Repository::SCM::Git
Public Instance Methods
available?()
click to toggle source
# File lib/luban/deployment/cli/application/scm/git.rb, line 9 def available? test(git_cmd, 'ls-remote --heads', from) end
branch?()
click to toggle source
# File lib/luban/deployment/cli/application/scm/git.rb, line 38 def branch? within(clone_path) { test(git_cmd, :"show-ref", "--quite --verify refs/heads/#{version}") } end
clone()
click to toggle source
# File lib/luban/deployment/cli/application/scm/git.rb, line 26 def clone test(git_cmd, :clone, '--mirror', from, clone_path) end
cloned?()
click to toggle source
# File lib/luban/deployment/cli/application/scm/git.rb, line 13 def cloned? file?(clone_path.join("HEAD")) and from == remote_origin end
commit?()
click to toggle source
# File lib/luban/deployment/cli/application/scm/git.rb, line 46 def commit? version =~ /^\h+/ and !revision.nil? end
fetch_revision()
click to toggle source
# File lib/luban/deployment/cli/application/scm/git.rb, line 21 def fetch_revision within(clone_path) { capture(git_cmd, "rev-parse --short=#{rev_size} #{version} 2>/dev/null") } #within(clone_path) { capture(git_cmd, "rev-list --max-count=1 --abbrev-commit --abbrev=rev_size #{version}") } end
git_cmd()
click to toggle source
# File lib/luban/deployment/cli/application/scm/git.rb, line 7 def git_cmd; :git; end
release()
click to toggle source
# File lib/luban/deployment/cli/application/scm/git.rb, line 34 def release within(clone_path) { test(git_cmd, :archive, version, "--format=#{release_package_extname} --prefix=#{release_tag}/ -o #{release_package_path}") } end
release_tag()
click to toggle source
Calls superclass method
# File lib/luban/deployment/cli/application/scm/git.rb, line 50 def release_tag @release_tag ||= commit? ? "ref-#{revision}" : super end
remote_origin()
click to toggle source
# File lib/luban/deployment/cli/application/scm/git.rb, line 17 def remote_origin within(clone_path) { capture(git_cmd, "config --get remote.origin.url 2>/dev/null") } end
tag?()
click to toggle source
# File lib/luban/deployment/cli/application/scm/git.rb, line 42 def tag? within(clone_path) {test(git_cmd, :"show-ref", "--quite --verify refs/tags/#{version}") } end
update()
click to toggle source
# File lib/luban/deployment/cli/application/scm/git.rb, line 30 def update within(clone_path) { test(git_cmd, :remote, :update, "--prune") } end