Reputation:
I want to simulate forking (as GitHub does it) a repository.
Essentially I want a local copy of a repository that is already hosted on GitHub, that I can push to and use as the remote in a project I will develop.
I don't want to directly clone the GitHub repository, because I don't have push access. However, I do want a remote (the "fork") that I will have push access to, because I want to keep a copy of my source in a more central location
I think the "fork" can be created with either
git clone --mirror https://github.com/user/repo
git clone --bare https://github.com/user/repo
but I am not clear on the differences between --mirror
and --bare
: I don't know which to use. And there might be a better solution entirely.
Then when I have "forked" it, I would like to clone the "fork" to where I will actually do development.
What's the most sensible way to do this?
Upvotes: 3
Views: 730
Reputation: 33
I wanted to do something similar too. You already got the answer indeed from @mimikrjia . However, if I were to give you more details I would recommend the following workflow based on my experience: In my case I have no remote repository my friend and I manage a collection of scripts on our private network.
create a bare git repository that would be your remote:
git init --bare
would do the job for you.
create another bare repository that would be the forked repository (proxy in my case) using the same command.
set up the forked repository:
git remote add origin
create a normal repository and set it up with
git init git remote add origin
Use git-hooks to automate your workflow and enjoy!!!
Upvotes: 1