Sha256: 7f6b6bebd8bbdbba19c84b734f942a2f1fd614782384e05273b421cd126c0ea9

Contents?: true

Size: 790 Bytes

Versions: 59

Compression:

Stored size: 790 Bytes

Contents

# frozen_string_literal: true

require 'avm/scms/interval'
require 'eac_ruby_utils/core_ext'

module Avm
  module Git
    module Scms
      class Git < ::Avm::Scms::Base
        class Interval < ::Avm::Scms::Interval
          def initialize(scm, from, to)
            super(scm, from, to)
            self.from = scm.commit(from)
            self.to = scm.commit(to)
          end

          # @return [Array<Avm::Git::Scms::Git::Commit>]
          def commits
            scm.git_repo.command('log', '--pretty=format:%H', git_commit_interval).execute!
               .each_line.map { |sha1| scm.commit(sha1.strip) }
          end

          # @return [String]
          def git_commit_interval
            [from.id, to.id].join('..')
          end
        end
      end
    end
  end
end

Version data entries

59 entries across 59 versions & 2 rubygems

Version Path
eac_tools-0.80.0 sub/avm-git/lib/avm/git/scms/git/interval.rb
eac_tools-0.79.0 sub/avm-git/lib/avm/git/scms/git/interval.rb
eac_tools-0.78.0 sub/avm-git/lib/avm/git/scms/git/interval.rb
eac_tools-0.77.1 sub/avm-git/lib/avm/git/scms/git/interval.rb
eac_tools-0.77.0 sub/avm-git/lib/avm/git/scms/git/interval.rb
eac_tools-0.76.1 sub/avm-git/lib/avm/git/scms/git/interval.rb
eac_tools-0.76.0 sub/avm-git/lib/avm/git/scms/git/interval.rb
eac_tools-0.75.2 sub/avm-git/lib/avm/git/scms/git/interval.rb
avm-git-0.13.4 lib/avm/git/scms/git/interval.rb
eac_tools-0.75.1 sub/avm-git/lib/avm/git/scms/git/interval.rb
eac_tools-0.75.0 sub/avm-git/lib/avm/git/scms/git/interval.rb
eac_tools-0.74.1 sub/avm-git/lib/avm/git/scms/git/interval.rb
eac_tools-0.74.0 sub/avm-git/lib/avm/git/scms/git/interval.rb
eac_tools-0.73.0 sub/avm-git/lib/avm/git/scms/git/interval.rb
eac_tools-0.72.0 sub/avm-git/lib/avm/git/scms/git/interval.rb
eac_tools-0.70.1 sub/avm-git/lib/avm/git/scms/git/interval.rb
eac_tools-0.70.0 sub/avm-git/lib/avm/git/scms/git/interval.rb
eac_tools-0.69.1 sub/avm-git/lib/avm/git/scms/git/interval.rb
eac_tools-0.69.0 sub/avm-git/lib/avm/git/scms/git/interval.rb
eac_tools-0.68.0 sub/avm-git/lib/avm/git/scms/git/interval.rb