Saya memiliki proyek PHP publik dalam repo GitHub, yang hanya berisi satu cabang (master).
Saya ingin memiliki cabang / garpu terpisah yang bersifat pribadi untuk saya (saya telah membayar untuk repo GitHub pribadi). Saya ingin menggabungkan perubahan dari cabang / garpu pribadi ke repo publik, dan sebaliknya.
Dengan mengingat hal itu, inilah pertanyaan saya:
- Bisakah saya memiliki cabang pribadi di repo publik?
- Dapatkah saya membagi repo publik saya sendiri ke cabang / garpu pribadi saya?
- Jika kedua hal di atas memungkinkan, manakah cara terbaik untuk maju? Jika tidak ada, bagaimana saya harus melanjutkan?
github
git-branch
fork
Kadal
sumber
sumber
Jawaban:
sumber
Di GitHub, repositori Anda bersifat publik atau privat; Anda tidak dapat secara selektif "memprivatisasi" hanya sebuah cabang.
Anda dapat mengkloning repo publik Anda ke mesin lokal, bercabang sesuai kebutuhan, dan tidak mendorong cabang "pribadi" Anda ke atas (dengan menentukan cabang mana yang akan didorong ke asal:
git push origin master
ataugit push origin branch-i-want-to-be-public:master
).Untuk memanfaatkan GitHub untuk pengembangan publik dan pribadi Anda, saya sarankan untuk membuat cabang publik Anda di GitHub, mengubah pengaturan garpu baru ke "Pribadi", dan kemudian mengkloning versi pribadi ke mesin lokal Anda. Saat Anda siap untuk membuat perubahan menjadi publik, dorong semuanya ke garpu pribadi Anda di GitHub dan kemudian gunakan permintaan tarik untuk menyalin cabang secara selektif ke repo publik.
Untuk membuat repositori menjadi pribadi di GitHub, Anda harus memiliki akun yang ditingkatkan (berbayar) . Jika Anda hanya menggunakan akun gratis, Anda masih dapat menggunakan proses pertama yang saya sarankan - mengkloning publik ke mesin lokal, cabang, dan mendorong cabang "publik" tertentu ke asalnya - tanpa memerlukan repo pribadi.
Jika Anda memiliki akun GitHub berbayar, atau menggunakan layanan lain yang menawarkan garpu publik dan privat serta permintaan tarik (seperti BitBucket ), Anda dapat menggunakan salah satu pendekatan di atas untuk menjadikan kode Anda publik.
sumber
Ada solusi lain yang menurut saya lebih baik karena tidak menghasilkan repo duplikat pada mesin yang sama.
Hasil akhirnya adalah 1 repositori dengan 2 remote. 1 publik, 1 pribadi.
Hanya perlu berhati-hati tentang mana yang Anda dorong agar namanya sesuai.
sumber
Dari apa yang saya tahu, tidak.
Tidak, Anda tidak dapat membagi repo penuh (cabang 1-n) menjadi satu cabang. Sebenarnya Anda bisa, jika Anda hanya bercabang satu cabang dari repo penuh. Cukup tambahkan sebagai remote atau mulai dari klon.
Anda mungkin juga tertarik dengan pembayaran Sparse .
t / a
t / a
sumber