-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
Feature: Add git drs remote remove command parity with user expectations and safer UX
Summary
Users frequently try git remote remove <name> when they intend to remove a Git DRS remote. This does not work because Git remotes and Git DRS remotes are different config domains.
We should provide a discoverable, user-friendly Git DRS removal workflow with clear guidance and safe defaults.
Problem Statement
From user feedback:
- Users run
git drs remote listand identify an unwanted DRS remote. - They attempt
git remote remove <name>, which only removes[remote "..."]Git entries, notlfs.customtransfer.drs.remote.*entries. - There was no obvious
git drs remote remove/rmpath in command discovery. - Manual
.git/configediting is error-prone and can leave staledefault-remotevalues.
Proposed Feature Scope
- Provide
git drs remote remove <name>and short aliasgit drs remote rm <name>. - Remove matching DRS remote config entries from namespaced keys (
lfs.customtransfer.drs.remote.*). - Also clean legacy keys (
drs.remote.*) where present. - If the removed remote is the default, automatically reassign to an existing remote or clear default when no remotes remain.
- Improve command help/docs with an explicit note that
git remote removedoes not manage Git DRS remotes.
Acceptance Criteria
git drs remote rm fooremoves remotefoofromgit drs remote list.- No
lfs.customtransfer.drs.remote.foo.*entries remain in.git/config. - If
foowas default and other remotes exist, one remaining remote becomes default. - If
foowas the last remote, no default remote is set. - Docs include usage examples for both
removeandrmand a migration note from manual config edits.
User Impact
- Reduces support burden from config-edit workarounds.
- Prevents broken states caused by stale defaults.
- Aligns behavior with common CLI expectations (
rmshorthand).
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels