lib/oxidized/output/git.rb
def version(node, group)
      repo, path = yield_repo_and_path(node, group)

      repo = Rugged::Repository.new repo
      walker = Rugged::Walker.new(repo)
      walker.sorting(Rugged::SORT_DATE)
      walker.push(repo.head.target)
      i = -1
      tab = []
      walker.each do |commit|
        next if commit.diff(paths: [path]).size.zero?

        hash = {}
        hash[:date] = commit.time.to_s
        hash[:oid] = commit.oid
        hash[:author] = commit.author
        hash[:message] = commit.message
        tab[i += 1] = hash
      end
      walker.reset
      tab
    rescue StandardError
      'node not found'
    end
def version(node, group)
      repo, path = yield_repo_and_path(node, group)

      repo = Rugged::Repository.new repo
      walker = Rugged::Walker.new(repo)
      walker.sorting(Rugged::SORT_DATE)
      walker.push(repo.head.target)
      i = -1
      tab = []
      walker.each do |commit|
        next if commit.diff(paths: [path]).size.zero?

        hash = {}
        hash[:date] = commit.time.to_s
        hash[:oid] = commit.oid
        hash[:author] = commit.author
        hash[:message] = commit.message
        tab[i += 1] = hash
      end
      walker.reset
      tab
    rescue StandardError
      'node not found'
    end
def version ( node , group ) repo , path = yield_repo_and_path ( node , group ) repo = Rugged :: Repository . new repo walker = Rugged :: Walker . new ( repo ) walker . sorting ( Rugged :: SORT_DATE ) walker . push ( repo . head . target ) i = - 1 tab = [ ] walker . each do | commit | next if commit . diff ( paths : [ path ] ) . size . zero? hash = { } hash [ :date ] = commit . time . to_s hash [ :oid ] = commit . oid hash [ :author ] = commit . author hash [ :message ] = commit . message tab [ i += 1 ] = hash end walker . reset tab rescue StandardError 'node not found' end
give a hash of all oid revision for the given node, and the date of the commit
give a hash of all oid revision for the given node and the date of the commit