class Jekyll::LastModifiedAt::Git

Attributes

site_source[R]

Public Class Methods

new(site_source) click to toggle source
# File lib/jekyll-last-modified-at/git.rb, line 8
def initialize(site_source)
  @site_source = site_source
  @is_git_repo = nil
end

Public Instance Methods

git_repo?() click to toggle source
# File lib/jekyll-last-modified-at/git.rb, line 25
def git_repo?
  return @is_git_repo unless @is_git_repo.nil?

  @is_git_repo = begin
    Dir.chdir(@site_source) do
      Executor.sh("git", "rev-parse", "--is-inside-work-tree").eql?("true")
    end
  rescue StandardError
    false
  end
end
top_level_directory() click to toggle source
# File lib/jekyll-last-modified-at/git.rb, line 13
def top_level_directory
  return unless git_repo?

  @top_level_directory ||= begin
    Dir.chdir(@site_source) do
      @top_level_directory = File.join(Executor.sh("git", "rev-parse", "--show-toplevel"), ".git")
    end
  rescue StandardError
    ""
  end
end