Home > Software design >  Have a Private Github Project Site for a Public Github Project
Have a Private Github Project Site for a Public Github Project

Time:09-30

Background

I have a public repository that is an open source library. I am now working on the documentation for it, however, before I release it, I would like to have it private.

Research

I have read that one can have a Private Project Site:

https://docs.github.com/en/pages/getting-started-with-github-pages/changing-the-visibility-of-your-github-pages-site

However, it is unclear to me if this feature is available for Public repositories as well, or if it is only available for Private repositories that are part of a Github Pro/Enterprise account.

Objective

My objective here is to have all my documentation in a Private Project Site, and then when the moment is right, make it public, so all the users of our open source project can read it.

Questions

  • Is there a way to achieve this?
  • If not, what is the closest solution to my objective?

CodePudding user response:

What I am reading here is that you can't manage access to your GitHub Page, like publish privately to people with read access to this repository and for that you need GitHub Enterprise.

https://docs.github.com/en/pages/getting-started-with-github-pages/changing-the-visibility-of-your-github-pages-site

Here in documentation they say that you can change in settings access to your page to 'private'. You can then work on it util it will be ready for publishing.

CodePudding user response:

Answer

(At the time of this writting)

After more investigation I have the understanding that I cannot have a Github Project Site remain private for a Public repo.

As far as I know, the best strategy is to deploy documentation to a new branch, called gh-pages and then either delete that branch (if I want docs to remain private) or create it and enable Github Project Site pages if I want the docs to be Public.

This does mean however that we cannot have the pages up privately and then make them public with the click of a button.

Once the pages are generated, they are public for everyone and there is no way around that (unless we have a Pro/Enterprise account).

  • Related