# File lib/plugins/git.rb, line 131
  def commit project, config, opts, issue
    opts[:edit] = true if opts[:message].nil?

    args = {
      :verbose => "--verbose",
      :all => "--all",
      :edit => "--edit",
    }.map { |k, v| opts[k] ? v : "" }.join(" ")

    comment = "# #{issue.name}: #{issue.title}"
    tag = "Ditz-issue: #{issue.id}"
    message = if opts[:message] && !opts[:edit]
      "#{opts[:message]}\n\n#{tag}"
    elsif opts[:message] && opts[:edit]
      "#{opts[:message]}\n\n#{comment}\n#{tag}"
    else
      "#{comment}\n#{tag}"
    end

    message = message.gsub("\"", "\\\"")
    exec "git commit #{args} --message=\"#{message}\""
  end