module Dockly::Util::Git
Public Instance Methods
archive(oid, prefix, output)
click to toggle source
# File lib/dockly/util/git.rb, line 15 def archive(oid, prefix, output) prefix = prefix.dup unless prefix[-1] == '/'; prefix << '/'; end cmd = ['git','archive',"--prefix=#{prefix}",'--output=/dev/stdout',oid] Open3.popen3(*cmd) do |stdin, stdout, stderr, wait_thr| stdin.close output.write(stdout.read) process_status = wait_thr.value exit_status = process_status.exitstatus raise "#{cmd.join(' ')} exitted non-zero: #{exit_status}" unless exit_status.zero? end end
repo()
click to toggle source
# File lib/dockly/util/git.rb, line 4 def repo @repo ||= MiniGit.new('.') end
sha()
click to toggle source
# File lib/dockly/util/git.rb, line 8 def sha return @sha if @sha @sha = repo.capturing.rev_parse('HEAD').chomp rescue @sha = 'unknown' end