[6/15] feat(submit): make forges branch-agnostic #1225
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Stack:
Bounds
toStrategy::midpoint
#1221query_stack_commits
toDag
#1222GitErrorCode
fromrepo
#1223SubmitStatus::Local
#1224Branch::rename
method #1226Git::clone_repo_into
#1227RUST_LOG
environment variable #1229⊘
to◌
for synthetic omitted-commit nodes #1230git-next
tests #1231testing
module #1232feat(submit): make forges branch-agnostic
It was previously assumed that all forges would want to create and operate on branches, and, in fact, the calling
git-branchless-submit
code would even create the branches returned byCreateStatus
. This has turned out not to be the case. For example, the Phabricator forge embeds the commit identifier in the (updated) commit message, and doesn't need a branch (and, in practice, it's turned out to be more annoying than useful to create the branches as shorthand identifiers).This commit removes the auto-branch-creation behavior and updates the terminology to be branch-agnostic and refer to "commits" instead of "branches".
As a result, commits are now "submitted" at the beginning of their submission lifecycle, and future pushes (etc.) are "updates". This doesn't exactly make sense with the name of the
--create
flag, since we never refer to "creating" a commit anywhere, only "submitting" one, so we might want to change that flag name or terminology in the future.