Proyek forking pada proses Github

25

Ada proyek di Github yang paling saya sukai dan ingin saya gunakan. Ada beberapa hal yang ingin saya lakukan secara berbeda / hapus yang tidak masuk akal untuk apa yang saya inginkan / butuhkan. Saya juga ingin menambahkan beberapa hal.

Seperti yang saya pahami, saya harus membayar proyek dan saya bisa membuat perubahan apa pun yang saya inginkan dan mendorong kembali ke garpu saya. Dari sana, saya juga ingin sesekali menarik garpu perubahan dari proyek asli sehingga saya mendapatkan perbaikan / fitur bug terbaru.

Apakah saya tidak mengerti bagaimana saya pikir itu harus bekerja? Bagaimana membawa perubahan dari proyek asli?

Mike Wills
sumber
1
Anda mungkin menemukan ini membantu: stackoverflow.com/questions/3329943/…
Michael Durrant

Jawaban:

18

Buat garpu, lalu buat cabang dengan segera.

Sekarang Anda memiliki master "tak tersentuh" ​​yang dapat diperbarui sendiri untuk mendapatkan perubahan terbaru dengan git pulls.

Buat Anda tetap bercabang lokal tanpa mendorong ke jarak jauh dan Anda dapat melakukan rebaseyang akan melakukan hal berikut untuk Anda:

  • simpan perubahan Anda
  • terapkan perubahan terbaru dari master ke cabang Anda (yang berasal dari pembaruan dari jarak jauh)
  • mengajukan kembali perubahan Anda lagi, di atas kode yang telah diperbarui dari master (atau cabang asli lainnya).

Ketika Anda akhirnya selesai dengan itu, gabungkan kembali menjadi master (atau cabang apa pun dari mana garpu pertama berasal) secara lokal dan kemudian kirimkan permintaan tarik untuk pemilik yang sebenarnya untuk menariknya.

Itu satu alur kerja (atau "forkflow"), seperti yang saya mengerti. Yang lain dipersilakan untuk berkomentar atau memperbaiki atau menambahkan lebih detail.

Michael Durrant
sumber
3
Ini sepertinya agak di luar topik. Ini membahas 'bagaimana' tanpa banyak penjelasan tentang apa yang Anda lakukan, dan menghindari masuk ke pertanyaan etiket. Anda dapat meningkatkan ini dengan memberikan ikhtisar tingkat tinggi tentang apa yang Anda capai, dan menjelaskan mengapa itu adalah cara yang baik untuk melakukannya dengan cara ini.
Justin Morgan
10

Anda pada dasarnya memilikinya: sekali Anda membuat garpu, itu adalah kotak pasir kecil Anda sendiri.

Saya pikir hal utama yang perlu Anda lakukan adalah segera membuat cabang setelah Anda bercabang, untuk menjaga garis asli pengembangan terpisah dari Anda sendiri. Apakah Anda berkembang di cabang ini atau master sebagian besar adalah masalah selera pribadi. Satu hal yang akan mencegah saya berkembang di master adalah terlalu mudah untuk melakukan "git pull" dan mendapatkan hal yang salah.

parsifal
sumber