A hand-typed branch name skips the machinery
A branch name tidier than the generated one silently opts out of every automation that discovers work by parsing it. The naming was the interface all along.
We use Google Analytics to see which pages help people. No ads, no profiles. Privacy Policy
7 posts
A branch name tidier than the generated one silently opts out of every automation that discovers work by parsing it. The naming was the interface all along.
A pull request that opens and merges in the same run is a push with extra steps. Draft is the one control that works without depending on permissions.
Untracked files on a protected branch exist in one place, so a later branch switch deletes them with no error and nothing to recover. Refuse at write time.
Collapsing a release into one command removes the only place a person could stop it. Separate the mechanical phases from the single judgement about timing.
Staging everything rolls a submodule pointer backwards, and the diff shows two hashes with no ordering. The one guard it needs is an ancestry test.
A fix to a template-derived file is correct locally and leaves the defect in the template and every sibling project. Classify by provenance at edit time.
A gate asked too often gets automated away, and one asked once never expires. Charge full authentication only for transitions that change the threat model.