Current section
Files
Jump to
Current section
Files
lib/Git/utils.ex
defmodule Versioce.Git do
@moduledoc """
Git utility functions for `versioce` module.
"""
@doc """
Get git repository.
"""
@spec repo() :: Git.Repository.t
def repo do
Git.init!()
end
@doc """
Stage files.
"""
@spec add([String.t]) :: String.t
def add(args \\ ["."]) do
repo()
|> Git.add!(args)
end
@doc """
Make a commit with a message.
"""
@spec commit(String.t) :: String.t
def commit(message) do
repo()
|> Git.commit!(["-m", message])
end
@doc """
Create a tag.
"""
@spec tag(String.t, String.t) :: String.t
def tag(name, message) do
repo()
|> Git.tag!(["-a", name, "-m", message])
end
end