Quando vuoi staccarti
Hai fatto fork di un repo, hai pushato il tuo lavoro e ora vuoi pubblicare in modo indipendente.
Elencare i remote
git remote -v
Rimuovere un remote
git remote remove origin
git remote -v
Aggiungere un nuovo origin
git remote add origin [email protected]:yourname/project.git
git push -u origin --all
git push -u origin --tags
Rinominare invece
git remote rename origin upstream
git remote add origin [email protected]:yourname/project.git
git fetch --all
git remote -v
Aggiornare un URL senza rimuovere
git remote set-url origin [email protected]:team/project.git
git remote set-url --push origin [email protected]:team/project.git
Rimuovere ref di tracking dopo distacco
git for-each-ref refs/remotes/origin --format='%(refname)' | \
xargs -n 1 git update-ref -d
Distaccarsi da upstream del tutto
# Option 1: keep history but rewrite the parent
git checkout --orphan new-main
git add -A
git commit -m "Initial commit (rebased history)"
# Option 2: keep history, just publish to a new remote
git remote remove origin
git remote add origin <new-url>
git push -u origin --all
Pushare a piu remote
git remote set-url --add --push origin [email protected]:user/repo.git
git remote set-url --add --push origin [email protected]:user/repo.git
git push origin main
Verificare dopo
git config --get-regexp '^remote\\.'
git remote show origin
Insidie comuni
- Dimenticare di pushare i tag al nuovo remote.
- Non aggiornare la configurazione CI.
- Submodule che puntano al vecchio remote.