Reputation: 2328
I have a private Github repository that I want to now transfer to a client. It looks like one way to do that would be to delete the '.git' folder on their local copy and then have them push the local copy to their own GitHub account or other repository. I don't really like that option because the .git folder would be deleted, although it has 500 MB of data in it.
Another way appears to be to transfer ownership of the repository to them via the GitHub interface, although I'm not sure if they will be using GitHub or another service for the repository.
Presumably, they can also Fork it if I give them access ? But then not sure what happens to the Fork if I delete my copy.
The goal is to basically transfer ownership and management of the "delivered" package to them, but it would be nice to maintain the .git history, and I have copies of my own in several different places elsewhere. If I were to just transfer ownership would I also be able to create a clone (on GitHub, not my local system) for myself on Github basically for archival purposes so that I have a record of what I delivered ?
There is an option for that also on GitHub.
Upvotes: 0
Views: 1765
Reputation: 42304
The .git
folder can be safely deleted by anyone; deleting .git
will not delete the repository itself. It is merely an indication of Git history for a project that has been pulled down from a repository onto a local machine. As such, the client shouldn't have a .git
folder at all, unless they have been working on the project themselves. Note that .git
folders refer to specific projects, so where theirs is pointing to will depend on how their project has been configured (be it clone, fork, etc.).
If you give them access to create a fork, then they essentially have a clone of your repo. However, be warned that if you delete a private repository all of the forks will be deleted. Retaining copies may come with some legal implications, so double-check with them on what exactly you're allowed to do in this regard. Typically it is the case that once a project is completed and assets are delivered, the client then owns the assets at that point in time.
In my opinion, the best approach to this would be to transfer the project to the client, then request that you're allowed to make a fork of it from your end. This way they can retain the digital rights to it, you can have a copy of it, and they can delete your copy if they so choose.
Upvotes: 1