Comment mettre à jour un référentiel GitHub avec des modifications depuis le référentiel en amont distant
Instructions de l'aide de GitHub:
Configuration d'une fourche distante
Synchroniser une fourchette
Instructions de configuration / utilisation:
Ouvrez Git Bash (Windows) ou un terminal Linux / Mac
Si vous n'avez pas encore cloné votre référentiel, vous devez accéder au répertoire de travail de votre dossier de développement et le cloner sur votre poste de travail.
$ git clone https://github.com/YOUR_USERNAME/YOUR_FORK.git
Accédez au répertoire de travail de votre référentiel forké sur votre poste de travail.
$ cd /user/development/my_forked_repo/
Répertoriez le référentiel distant configuré actuel pour votre fork.
$ git remote -v
origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)
origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)
Spécifiez un nouveau référentiel en amont distant qui sera synchronisé avec le fork.
$ git remote add upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git
Vérifiez le nouveau référentiel en amont que vous avez spécifié pour votre branche.
$ git remote -v
origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (fetch)
origin https://github.com/YOUR_USERNAME/YOUR_FORK.git (push)
upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (fetch)
upstream https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (push)
Récupérez les branches et leurs commits respectifs dans le référentiel en amont. Les commits à maîtriser seront stockés dans une branche locale, en amont / maître.
$ git fetch upstream
remote: Counting objects: 75, done.
remote: Compressing objects: 100% (53/53), done.
remote: Total 62 (delta 27), reused 44 (delta 9)
Unpacking objects: 100% (62/62), done.
From https://github.com/ORIGINAL_OWNER/ORIGINAL_REPOSITORY
* [new branch] master -> upstream/master
Vérifiez la branche principale locale de votre fourche.
$ git checkout master
Switched to branch 'master'
Fusionner les modifications de l'amont / maître dans votre branche maître locale. Cela permet de synchroniser la branche principale de votre fork avec le référentiel en amont, sans perdre vos modifications locales.
$ git merge upstream/master
Updating a422352..5fdff0f
Fast-forward
README | 9 -------
README.md | 7 ++++++
2 files changed, 7 insertions(+), 9 deletions(-)
delete mode 100644 README
create mode 100644 README.md
Si votre branche locale n'a pas de commits uniques, Git effectuera une "avance rapide":
$ git merge upstream/master
Updating 34e91da..16c56ad
Fast-forward
README.md | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
Vous devez maintenant pousser les commits vers votre fourche.
$ git push
Si vous n'êtes pas encore authentifié, il vous demandera votre nom d'utilisateur / mot de passe github. Une fois authentifiés, les nouveaux commits doivent être placés sur votre fork et visibles sur github.