def commit_export(commit_sha = head_sha)
      commit_sha = commit_sha.to_s

      ce_commit = @g.gcommit(commit_sha)

      if first_commit == commit_sha
        ce_diff = diff_initial(first_commit)
      else
        last_commit = @g.gcommit(previous_commit(commit_sha))
        ce_diff = diff(last_commit, ce_commit)
      end

      {
        commit_sha: commit_sha,
        branch: branch,
        message: ce_commit.message,
        remote_repo: remote,
        git_author: ce_commit.author.name,
        git_author_email: ce_commit.author.email,
        commit_date: ce_commit.author.date.to_s,
        diff: ce_diff
      }
    end
def commit_export(commit_sha = head_sha)
      commit_sha = commit_sha.to_s

      ce_commit = @g.gcommit(commit_sha)

      if first_commit == commit_sha
        ce_diff = diff_initial(first_commit)
      else
        last_commit = @g.gcommit(previous_commit(commit_sha))
        ce_diff = diff(last_commit, ce_commit)
      end

      {
        commit_sha: commit_sha,
        branch: branch,
        message: ce_commit.message,
        remote_repo: remote,
        git_author: ce_commit.author.name,
        git_author_email: ce_commit.author.email,
        commit_date: ce_commit.author.date.to_s,
        diff: ce_diff
      }
    end
Set up instance variables

 Inherits settings from {Config#initialize}
 @param opts [Hash] options passed directly to config
 @option opts [Config object] :config custom Maximus::Config object
 @option opts [String] :commit accepts sha, "working", "last", or "master".
 30,000 foot view of a commit
 @param commit_sha [String] (head_sha) the sha of the commit
 @return [Hash] commit data