{"id":23602968,"url":"https://github.com/gitblit-org/gitblit-tbacl-plugin","last_synced_at":"2025-11-05T07:30:23.717Z","repository":{"id":17649140,"uuid":"20453649","full_name":"gitblit-org/gitblit-tbacl-plugin","owner":"gitblit-org","description":"Simple plugin to enforce teamname-branchname ACLs","archived":false,"fork":false,"pushed_at":"2023-04-06T17:17:07.000Z","size":37,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-12-27T12:13:52.537Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gitblit-org.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-06-03T18:07:15.000Z","updated_at":"2023-04-06T17:17:13.000Z","dependencies_parsed_at":"2022-09-02T22:01:10.404Z","dependency_job_id":null,"html_url":"https://github.com/gitblit-org/gitblit-tbacl-plugin","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gitblit-org%2Fgitblit-tbacl-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gitblit-org%2Fgitblit-tbacl-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gitblit-org%2Fgitblit-tbacl-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gitblit-org%2Fgitblit-tbacl-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gitblit-org","download_url":"https://codeload.github.com/gitblit-org/gitblit-tbacl-plugin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239449583,"owners_count":19640535,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-27T12:13:56.484Z","updated_at":"2025-11-05T07:30:23.652Z","avatar_url":"https://github.com/gitblit-org.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Gitblit Team-Branch ACLs\n\n*REQUIRES 1.5.0*\n\nThis plugin requires enforces a relationship between teams and target branches; i.e. the user pushing commits must be a team member to push to the team branches.  Pushes outside the team branches sandbox are rejected unless the pushing user is an owner or administrator.\n\nFor example, if *joe* wants to push to the *master* branch he must be a member of the `master` team.\n\nOr if team namespaces are enabled, *joe* can push to the *qa/master* branch if he is a member of the `qa` team.\n\n**NOTE:**\nOnly administrators or owners can push refs outside the branch namespace (e.g. tags).\n\n### Installation\n\nThis plugin is referenced in the Gitblit Plugin Registry and you may install it using SSH with an administrator account.\n\n    ssh host plugin refresh\n    ssh host plugin install tbacl\n    ssh host plugin ls\n\nAlternatively, you can download the zip from [here](http://plugins.gitblit.com) manually copy it to your `${baseFolder}/plugins` directory.\n\n### Setup\n\nThere is no required setup but there are some optional settings you may want to configure.\n\n#### tbacl.useTeamNamespaces\n\nDEFAULT: **false**, *strict team\u003c-\u003ebranch mapping*\n\n*tbacl.useTeamNamespaces* = true will require that non-admins and non-owners push to a team branch namespace.  This is a little more flexible than the default strict teamname\u003c-\u003ebranchname requirement.\n\nFor example, *qa* team members are allowed to push to:\n\n- refs/heads/qa/master\n- refs/heads/qa/develop\n\nBut **not** to:\n\n- refs/heads/qa\n\nAnd *coders* team members are allowed to push to:\n\n- refs/heads/coders/master\n- refs/heads/coders/develop\n\nBut **not** to:\n\n- refs/heads/coders\n\n#### tbacl.applyToPersonalRepos\n\nDEFAULT: **false**, *personal repositories are skipped*\n\n*tbacl.applyToPersonalRepos* = true will apply the branch\u003c-\u003eteam requirement to personal repositories.\n\n### Building against a Gitblit RELEASE\n\n    ant \u0026\u0026 cp ./build/target/tbacl*.zip /path/to/gitblit/plugins\n\n### Building against a Gitblit SNAPSHOT\n\n    /path/to/dev/gitblit/ant installMoxie\n    /path/to/dev/tbacl/ant \u0026\u0026 cp ./build/target/tbacl*.zip /path/to/gitblit/plugins\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgitblit-org%2Fgitblit-tbacl-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgitblit-org%2Fgitblit-tbacl-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgitblit-org%2Fgitblit-tbacl-plugin/lists"}