Can I give read-only access to a private repo (from a developer account)?

I just discovered the option of private repositories in the announcement. Just like stated, I use them to ‘apply for a job’. That’s even the only  usage I make of them, besides experimenting with Git and Github.

So, I would like to selectively give access to people, like by supplying an URL with a key. As I know from photo albums on the web. This should be ready only, which may include copying or cloning, preferably copying.

So that is my request, which seems pretty obvious to me.

By the way, I do not consider this ‘solved’. That is more of an euphemism to get rid of the question.


It seems to me that the git/GitHub owners, by assuming that there is only one use-case for git/GitHub (shared open software development), are limiting the usefulness of GitHub. Some of the postings in this thread show other use cases that require readonly access to files for one audience yet require pulling/pushing/versions/branches to the developers.

An additional use case that occurs to me is using GitHub to make a portion of a proprietary product public. We always assume that a product is either proprietary or open, but not both. But I can easily imagine products that are proprietary and sold for profit, yet contribute a new and useful subroutine or algorithm to the Open Software community. In such a case the developers might want to use GitHub to collaborate in private, but might want one specific file to be readonly or read/write visible to the public.

Addition to message #21:

Another use case for fine-grained permissions is when a commit concerns a security problem. The changed files in such a commit should be visible only to the author and to those who manage security updating. In case it isn’t obvious, the reason is that making these files readonly or read/write might leak compromise information to malicious users when the repository access is public.

Also, it might be helpful to note here that the Google Gerrit Code Review process and tools, built on top of git, already provide such fine-grained permissions, but at the expense of a very detailed workflow as compared with either git or GitHub.

+1 It would be a great feature to have.


Guess there arent any news in this subject right? is there an open ticket to implement the feature at least? What alternatives are you using? I really dont want to duplicate my repos, plus downloading is different from consulting

Hi @navyseai,

Our product team is definitely discussing new features to make collaboration of different types easier on GitHub. However, nothing on this front has shipped as of yet. Any new features will be announced in the GitHub Changelog, so I’d recommend keeping an eye on that page for updates. 

As for collaborating on projects where you want someone to be able to work on a portion of the codebase but not the entire codebase, it might be worth breaking your codebase into smaller, reusable pieces. Then you could add someone as a collaborator on a repository that only has access to the smaller piece of the whole and you can use continuous integration to make sure that changing code in one piece doesn’t break the overall codebase.

Hope that helps!

1 Like

Would be VERY useful to be able to share a URL (and key?) for read only accesses


Yea… that was my next question, if it was possible to restrict users to certain folders.

I came up with some workarrounds to fix these problems

I think it is a good idea to add a read-only permission that allows a developer to share a URL of his code to an employer for example during a technical test.


+1 on this feature request! Please!


As some have mentioned. I have clients that would like to review my code, but still limit their access to specific files/folders. And the same for private code that could be shared with potential clients to give them an idea about the quality of work that can be provided, and so on.

If perhaps there were permissions for specific files/folders with a timeout option. That way, there wouldn’t be a need to revoke permissions at a later date.

1 Like

The “Solution” is not a solution though :(  It’s just an explanation of the current system which does NOT have the requested feature. Glad I’m not alone in needing (not wanting) this feature!


4 months later and I see nothing about this feature on the Changelog. So having read-only access to a private repo is not in our future? What service are developers using to show their private work to prospective clients?

@firstprinciples-ai wrote:

Hi everyone, apologies if this is repeating a topic discussed already. 


Can I give read-only access to my private repo, to someone who is not a collaborator at present? Can I share a url, or add someone as a read-only collaborator? I don’t want to give fork/clone/download rights. 


I have a Developer account at present (not a Team/Business account, so cannot structure an organization-based acess). Here are the types of Github accounts. Thanks.

I think it is a good idea to add a read-only permission that allows a developer to share a URL of his code to an employer for example during a technical test.

1 Like


For Organizations, what about a specific permission level so our customers (external collaborators) can only create issues (and why not read-only access to projects/wiki too?) inside private repos?

Currently they also have access to code + pull requests and they use paid seats which is problematic for us.

EDIT : (I’m talking about the “Team” plan)



Hello Github,

Please implement this feature (including Github Enterprise)!  Thank you.


Existing features (including lack of forced PR’s) for private repos don’t make this any better than hosting a repo on any number of other services.

 Another +1 to read-only.

It’s crazy that to share some code with folk I have to hand them the keys to the kingdom, ie ability to mess up master. We should be able to share code (that they can clone etc) but push etc privileges should be a tickbox and by default disabled.


+1 Please add this feature for a developer account. Btw if I add Collaborators to my private repo, then can they push to any branch or create any branch on github?

1 Like

+1 Here too. I’m kinda astonished this hasn’t been implemented yet. You should be able to create a unique, read-only, guid-like link to your private repo similar to what you can do with files in OneDrive. This is a no-brainer.

1 Like