J'ai un profil github et j'ai fourré le référentiel de quelqu'un dans le mien. et localement, j'ai cloné ce référentiel en utilisant
git clone https://github.com/my-github-page/repo-name
Maintenant, depuis un certain temps, le propriétaire du référentiel d'origine a mis à jour son référentiel, mais le mien est derrière. Donc, si je veux faire git pull
pour fusionner ses modifications dans les miennes. Mais je voudrais pousser mes changements du local au mien.
En termes simples, si je le fais git remote show Origin
J'ai compris:
[root@localhost xxx]# git remote show Origin
* remote Origin
Fetch URL: https://github.com/my-github-profile/xxx
Push URL: https://github.com/my-github-profile/xxx
HEAD branch: master
Remote branches:
1.0 tracked
master tracked
system_tests tracked
Local branch configured for 'git pull':
master merges with remote master
Local ref configured for 'git Push':
master pushes to master (up to date)
Maintenant, je veux changer l'URL FETCH en src d'origine du dépôt. Parce que l'original est mis à jour mais ma fourchette est derrière
Tu peux essayer:
git remote set-url Origin /original/repo
git remote set-url --Push Origin /your/fork
De cette façon, récupérez uniquement les références de l'URL de dépôt d'origine.
L'autre approche plus traditionnelle, bien sûr, consiste à déclarer une autre télécommande, comme je l'ai détaillé dans "Quelle est la différence entre Origin et en amont sur GitHub?"
Prendre les références de la question suivante: github, mettre à jour le projet forked
Procédez comme suit:
git remote add upstream <url of the repo you cloned from>
Après cette traction en amont. Cela tirera toutes les modifications à distance dans votre copie locale.
Si à l'avenir, vous devez à nouveau extraire les modifications à distance, vous pouvez à nouveau extraire de l'amont, cette fois sans avoir besoin d'ajouter à nouveau l'url en amont.
Lecture suggérée: Synchronisation d'une fourchette