Secara desain, forking suatu proyek menciptakan repo terpisah yang tidak diperbarui ketika repo asli berubah. Namun, git
membuatnya cukup mudah untuk memperbarui secara manual.
Anda memerlukan bantuan repositori ke-3 (salinan lokal Anda sudah mencukupi). Ada 3 repo:
- "Hulu": repositori proyek hulu di Github.
- "Asal": repositori garpu Anda di Github
- "Lokal": Gudang lokal Anda di komputer Anda. Saya akan menganggap Anda membuatnya dengan mengkloning Fork menggunakan
git clone git@github.com:your-username/projectname.git
, dan bahwa semua orang menggunakan cabang master
.
Dengan asumsi "Asal" dan "Lokal" saat ini berada dalam keadaan yang sama, dan "Hulu" berada di depan dengan 1 atau lebih komit (gabungan dan perubahan berikutnya).
Pertama-tama tambahkan proyek upstream sebagai remote Git :
git remote add upstream https://github.com/upstream-username/projectname.git
Kemudian tarik (artinya ambil lalu gabungkan secara otomatis) perubahan dari master
cabang jarak jauh ke cabang repositori lokal Anda saat ini ( master
):
git pull upstream master
Sekarang repositori lokal Anda sinkron dengan upstream
. Akhirnya, dorong repo lokal Anda ke garpu Github Anda:
git push origin master
Sekarang semuanya sinkron.