Allow having a public issue tracker without sharing the code
Summary
Allow having a public issue tracker without giving unauthorized access (pull, fetch or clone) to the repository.
Steps to reproduce
I can't find how to give public access to a project Issues without giving public access to the sources.
There are three "Visibility Level"s:
- "Private": I can choose "Disabled" and "Only team members" at the "Issues", so I can't give public access to the Issues.
- "Internal": I can choose "Disabled" , "Only team members" and "Everyone with access" at the "Issues", but I can't give public access to the Issues.
- "Public": I am giving public clone access to the sources, which I don't want.
Expected behavior
I would expect to have some way to allow public access, without any login, to the Issue Tracker without allowing git clone, git fetch orgit pullwithout a login.
Relevant logs and/or screenshots
Here some of the new options added with #19734 (closed). Note you can set the push permissions for the repo, but not for the clone/pull:
Possible fixes
I would change code under "Visibility Level" to only affect visibility, and nothing about git clone/pull/fetch rights.
Then I would modify the "Feature Visibility" options a bit, adding "Clone" and "Push" in the "Repository" list. Ie:
- Repository: Nothing to select, or some predefined templates like Totally Public/ Totally Private / Custom
- Clone/Pull: Only team members / Everyone with access
- Push: Only team members / Everyone with access
- Merge requests: Disabled/ Everyone with Push access (I'm not sure)
- Builds: Disabled/ Everyone with Push access (I'm not sure)

