Add default branch check and user confirmation to --push flag #11343
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.
The
--pushflag ininitandupgradecommands now validates the current branch and requires user confirmation before committing/pushing changes.Changes
Remote repository requirement: The
--pushflag now requires a remote repository to be configured. Operations fail immediately with a clear error if no remote exists.Default branch validation: Queries GitHub API to verify current branch matches repository default before pushing.
User confirmation: Prompts for explicit confirmation before mutating git operations. Auto-confirms in CI environments (detected via
CI,CONTINUOUS_INTEGRATION,GITHUB_ACTIONSenv vars).New helper functions (
pkg/cli/git.go):getDefaultBranch()- Fetches default branch viagh apicheckOnDefaultBranch(verbose bool)- Validates branch match and remote existenceconfirmPushOperation(verbose bool)- Interactive confirmation promptBehavior
Before push, the flow now validates:
In CI environments, confirmation is automatic with no prompt shown.
Original prompt
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.