Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
heptapod
heptapod
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 132
    • Issues 132
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 4
    • Merge Requests 4
  • Operations
    • Operations
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • Repository
    • Value Stream
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar

This instance will be upgraded to Heptapod 0.21.0rc2 on 2021-04-16 at 14:00 UTC+2 (a few minutes of down time)

  • heptapod
  • heptapodheptapod
  • Issues
  • #414

Closed
Open
Created Jan 27, 2021 by Dan Villiom Podlaski Christiansen@dan

Only protected branches should be published

Proposal

I've used both GitLab itself and GitHub, relying on both protected branches and routine force-pushes to unprotected branches. Essentially, both consider a protected branch something that you can neither delete nor force-push. The closest equivalence to this “branch protection” — which isn't really a Git concept — is public changesets in Mercurial. The same guarantees apply; once a public changeset is pushed, that's it, and you can never unpublish it, short of administrative action.

So, when first using Heptapod, I was rather surprised to learn that it's auto-publishing except for topics. What is the point of exposing “protected branches” in the UI, if it has no effect?

(As an aside, this also makes it harder to interact with any remote repositories using hg-git, as that requires bookmarks and draft changesets. But I have no actual use for that right now.)

Assignee
Assign to
Heptapod 0.20.5
Milestone
Heptapod 0.20.5
Assign milestone
Time tracking
None
Due date
None