Saya punya fork ( origin
) dari project ( upstream
) di github. Sekarang proyek hulu telah menambahkan cabang baru, saya ingin mengimpor ke garpu saya. Bagaimana aku melakukan itu?
Saya mencoba memeriksa remote dan membuat cabang di atasnya, tetapi mengkonfigurasi cabang dengan cara yang git push
mencoba untuk mendorong ke upstream
:
git checkout upstream/branch
git checkout -b branch
sunting
Mungkin itu tidak jelas, tapi saya ingin menambahkan cabang ke repositori lokal saya, jadi saya bisa mendorongnya ke origin
(garpu saya) via git push
. Karena repositori hulu biasanya hanya-baca dan Anda membayarnya untuk berkontribusi.
Jadi pada dasarnya saya ingin checkout cabang yang tidak ada origin
yang isinya akan ditarik upstream
.
git fetch upstream
adalah pilihan yang lebih baik pada langkah pertama, karenagit pull upstream
membutuhkan lebih banyak tindakan yang harus dilakukan setelahgit remote add ...
untukupstream
.You asked to pull from the remote 'upstream', but did not specify a branch. Because this is not the default configured remote for your current branch, you must specify a branch on the command line.
Menambahkan nama cabang di akhir perintah menyebabkan penggabungan antara cabang di hulu dengan cabang lokal saat ini alih-alih memungkinkan pembuatan cabang lokal baru. Ada ide?git pull upstream
dengangit fetch upstream
memecahkan masalah, dan langkah-langkah berikut berhasil.Saya akan menggunakan
sumber
Saya juga mengalami masalah dengan ini, dan google membawa saya ke sini. Namun solusinya tidak berhasil. Masalah saya adalah ketika saya menambahkan upstream saya, itu mengatur konfigurasi git saya untuk hanya mengambil master, daripada semua cabang. misal terlihat seperti ini
Mengedit .git / config sebagai berikut memperbaiki masalah saya
sumber
Langkah-langkah berikut ini berhasil bagi saya (dengan asumsi nama cabang hulu adalah
branch
):sumber
--track
?sumber
push
mendorong keupstream
.Saya memiliki skenario yang sedikit lebih rumit di mana saya sudah memiliki
upstream
definisi dalam fork saya (dari repo kanonik) tetapi perlu checkout cabang dari fork yang berbeda. Untuk menyelesaikannya, prosesnya sedikit berbeda. Inilah konfigurasi yang akhirnya saya buat:Sekarang Anda dapat checkout cabang dari
<other_user>
garpu juga.Itu akan memberi Anda cabang lokal yang berasal dari garpu.
Untuk mendorong cabang lokal itu saya harus spesifik dengan perintah push saya.
sumber