Skip to content

Instantly share code, notes, and snippets.

@DavideMontersino
Last active February 27, 2024 12:56
Show Gist options
  • Save DavideMontersino/810ebaa170a2aa2d2cad to your computer and use it in GitHub Desktop.
Save DavideMontersino/810ebaa170a2aa2d2cad to your computer and use it in GitHub Desktop.
How to fork to a private gitlab instance

Theory:

your git repository can have more than one remote server; In this case we want to have two:

  1. one for our private repository on gitlab (will be the default one, called origin)
  2. one to be connected to the source repo on github, to be able to pull new changes (will be called upstream)

How to make a private fork from github to gitlab

  # 1. clone the github project in your workspace
  git clone [email protected]:whatever/repo.git

  # 2. rename the remote
  git remote rename origin upstream

  # 3. Create a new repo in gitlab website

  # 4. Add the new origin to your repo

  git remote add origin [email protected]:whatever/swiper.git

  # 5. push to the private repository (track master)

  git push -u origin master

To push to gitlab / master, just use

   git push

To retrieve updates from github, use

   git pull upstream master
@ZelphirKaltstahl
Copy link

👍

@razorness
Copy link

If you get

error: src refspec master does not match any.
error: failed to push some refs to 'https://gitlab.foo.bar/group/project.git'

Do this as step 5:

git push -u origin --all
git push -u origin --tags

@velmuruganvelayutham
Copy link

velmuruganvelayutham commented Apr 15, 2018

remote: GitLab: Author '[email protected]' is not a member of team
To [email protected]:dev-group/tyk-pump.git
! [remote rejected] dev -> dev (pre-receive hook declined)

getting this error while trying to push to gitlab repo

@CLOVIS-AI
Copy link

Maybe you forgot to do the git config --global user.name and user.email config ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment