# Functions
CloneRepo creates a temp directory and clones the repo at $tmpBranch into it.
CopyCIFiles copies the files from tests/fakeRepo/* into the temp-dir.
CreateBranchProtection creates a branch protection for the base branch.
GitPush adds, commits, and pushes all changes to $tmpBranch.
GitPushCommit adds, commits, and pushes the fakeRepo files to the base branch.
InitializeRepo creates a temp directory and initializes it as a new repo.
OpenPull opens the pull request to merge the changes from $tmpBranch into $target.
UpdateReferences walks through the files in the cloned repo, and updates references from $base to $target.
# Structs
CreateScaffoldCommand is a struct used to configure a Command for creating an initial commit and pushing it to the base branch of a given repo.
UpdateRefsCommand is a struct used to configure a Command for updating CI references.