Weld.Git (weld v0.7.2)

Copy Markdown View Source

Thin Git CLI wrapper used for affected-file resolution and release metadata.

Summary

Functions

branch_exists?(repo_root, branch)

@spec branch_exists?(Path.t(), String.t()) :: boolean()

changed_files(repo_root, base, head)

@spec changed_files(Path.t(), String.t(), String.t()) :: [String.t()]

commit_all!(repo_root, message)

@spec commit_all!(Path.t(), String.t()) :: :ok

create_tag!(repo_root, tag)

@spec create_tag!(Path.t(), String.t()) :: :ok

ensure_clean_repo!(repo_root)

@spec ensure_clean_repo!(Path.t()) :: :ok

fetch_branch!(repo_root, remote, branch)

@spec fetch_branch!(Path.t(), String.t(), String.t()) :: :ok

push_branch!(repo_root, remote, branch)

@spec push_branch!(Path.t(), String.t(), String.t()) :: :ok

push_tag!(repo_root, remote, tag)

@spec push_tag!(Path.t(), String.t(), String.t()) :: :ok

remote_branch_exists?(repo_root, remote, branch)

@spec remote_branch_exists?(Path.t(), String.t(), String.t()) :: boolean()

remote_url(repo_root)

@spec remote_url(Path.t()) :: String.t() | nil

revision(repo_root)

@spec revision(Path.t()) :: String.t() | nil

run(repo_root, args)

@spec run(Path.t(), [String.t()]) :: {:ok, String.t()} | {:error, String.t()}

run!(repo_root, args)

@spec run!(Path.t(), [String.t()]) :: String.t()

stage_all!(repo_root)

@spec stage_all!(Path.t()) :: :ok

staged_changes?(repo_root)

@spec staged_changes?(Path.t()) :: boolean()

switch_orphan!(repo_root, branch)

@spec switch_orphan!(Path.t(), String.t()) :: :ok

worktree_add!(repo_root, worktree_path, branch)

@spec worktree_add!(Path.t(), Path.t(), String.t()) :: :ok

worktree_add_detached!(repo_root, worktree_path)

@spec worktree_add_detached!(Path.t(), Path.t()) :: :ok

worktree_remove!(repo_root, worktree_path)

@spec worktree_remove!(Path.t(), Path.t()) :: :ok