So when I go to my projects settings > General > Visibility and try to set project visibility to anything else all options are gray but public. I own the project. I remember when I set up the project the options for public, private were gray then as well. Not sure as Im new to gitlab and the answer is not obvious. Maybe it is a paid feature?
No, public is not paid feature, although don’t know why you have this problem. I can change a private repo to public.
Thanks. It’s good to know that it’s likely a browser issue. Firefox Linux.
I use Firefox on Linux too, no problem, so it’s not this. At least not for me. Try another browser see if it works, then maybe clear your browser history.
Fails in chromium as well. In firefox I do not keep browser cache/history/cookies or anything really. Thanks for the advise though.
Are you using gitlab.com a self-managed GitLab instance?
If it’s self-managed, check in the admin area at:
and look for this setting:
Im using gitlab.com. I log in and go to my project and select:
Settings > General > Visibility, project features, permissions
and under Project Visibility the dropdown box is auto selected to Public with all other options un-selectable.
Maybe I should remove and recreate the project on gitlab then push again?
Edit: I removed the repository project and all it’s files. Created a new project and selected public during creation. Added remote origin and pushed again. Still unable to change visibility settings.
The output from the console tells me that → remote: The private project was successfully created.
I chose public when I created my gitlab project. Yet after following the CLI instructions provided to Push an existing Git repository, my project is set to private.
using git version 2.32.0, Manjaro.
Thanks for confirming you’re on gitlab.com
Are you creating the project in a personal namespace or a group?
The title of this thread says you’re unable to make a project public. Am I correct that you are able to make a public project, but that when you push to it, it changes to private?
If you can share some more details of the commands you’re issuing and maybe some screenshots that could be helpful.
I assume im doing it on my personal namespace. I’m not part of any group. Just me trying to see if I should move my code here from bitbucket. I have been here less than a week so I’m not exactly sure how everything is set up. Although I should be grouping projects together im just testing gitlab before moving 10000’s of lines of code.
So I login.
Create Blank Project
Enter all the form data to build a project. I have been leaving the description blank as this is just a test to see if I should move my code base. Select Public, since im pushing an existing git repo I leave the checkbox deselected. and create project.
I just checked before pushing and it seems that the project is in fact Public before I push.
So I push following the instructions provided for Push an existing Git repository.
During git push -u origin --all, the output is:
client_global_hostkeys_private_confirm: server gave bad signature for RSA key 0 Enumerating objects: 156, done. Counting objects: 100% (156/156), done. Delta compression using up to 8 threads Compressing objects: 100% (156/156), done. Writing objects: 100% (156/156), 110.01 KiB | 3.93 MiB/s, done. Total 156 (delta 90), reused 0 (delta 0), pack-reused 0 remote: Resolving deltas: 100% (90/90), done. remote: remote: remote: The private project 3p0s/MyProject was successfully created. remote: remote: To configure the remote, run: remote: git remote add origin firstname.lastname@example.org:3p0s/MyProject.git remote: remote: To view the project, visit: remote: https://gitlab.com/3p0s/MyProject remote: remote: remote: To gitlab.com:3p0s/MyProject.git * [new branch] master -> master Branch 'master' set up to track remote branch 'master' from 'origin'. rockHopper: image_gallery $ git push -u origin --tags client_global_hostkeys_private_confirm: server gave bad signature for RSA key 0 Everything up-to-date
As the above output suggests that during project creation and before first push the project appears to be Public. The dropdown menu had two options to select [Public, Private] with internal grayed out. During push something is changed. Is public, private a built in feature in git that I never knew about? The code/repo I pushed is a public repo on bitbucket right now. I dont know?
Not exactly sure whats going on here?
So I had to deviate from the instructions provided and use
git remote set-url instead of
git remote add.
git remote set-url origin email@example.com:3p0s/MyProject.git git push -u origin --all git push -u origin --tags
The repo was being pushed to a new “private-only” project and not the public one I had created previously. They shared the same name and everything. I think I’ve solved this.
Thanks for the help tatkins and iwalker.
Glad to hear you got it working
I had the same experience as a new/trial user. I found that I had to make the group public first. After that I could make the project public. For both group and project, select settings/General from the sidebar menu. Having made the project public, I found that I couldn’t make the group private again. However I could back out by first making the project private and then making the group private.
I did not have to delete and re-push, and I did not have to modify my local remotes.
I got here from an internet search (DuckDuckGo) and I believe the actual solution was this:
The group must be made public before the project can be made public.
From the documentation:
- You must have the Owner role for a group.
- On the top bar, select Menu > Groups and find your project.
- On the left sidebar, select Settings > General .
- Expand Naming, visibility .
- Under Visibility level select either Private , Internal , or Public .
- Select Save changes .
THEN, the project visibility: