Jawaban singkat ...
Saran saya: Mulai dengan akun publik di GitHub dan / atau Bitbucket (lainnya?). Lemparkan beberapa proyek publik dan mulai gunakan alat / antarmuka. Setelah Anda merasakan layanan, maka Anda harus memahami apa keterbatasan, kelebihan dan kekurangan dari masing-masing layanan. Dari sana, Anda harus dapat memilih jalur terbaik menuju pencerahan kontrol versi. :)
Jawaban panjang ...
Saat ini saya tidak memiliki cadangan di luar situs untuk sebagian besar kode saya, jadi sebagai bagian dari ini, saya awalnya berpikir saya akan mengunggah semua proyek pribadi saya, atau setidaknya semua proyek iOS saya, ke repositori pribadi yang di-hosting oleh GitHub . Namun, saya memiliki banyak proyek yang sedang berlangsung, banyak di antaranya bernilai rendah (yaitu, diadaptasi dari buku dan ditulis untuk pengalaman belajar).
Sudahkah Anda mempertimbangkan untuk menginstal klien Git Anda sendiri? Jika Anda sudah membayar untuk hosting web, maka mungkin masuk akal untuk menggunakan host itu untuk pengaturan Git Anda sendiri.
Misalnya, host saya adalah WebFaction (tidak ada afiliasi):
Menginstal Aplikasi Web Git
Menuju rute ini memungkinkan Anda menghemat $$$, terutama. jika Anda sudah membayar untuk hosting.
GitHub tidak hanya mengisi oleh repositori pribadi,
Hanya untuk mengklarifikasi untuk orang lain (sekali lagi, tidak ada afiliasi bisnis dengan GitHub atau BitBucket):
- $ 7 / bln. hingga 5 repositori pribadi , tidak terbatas segalanya.
- $ 12 / bln. hingga 10 repositori pribadi , tidak terbatas segalanya.
- $ 12 / bln. hingga 20 repositori pribadi , tidak terbatas segalanya.
Perhatikan bahwa harga "Paket Bisnis" berbeda.
Seperti yang dinyatakan oleh Andrew dalam jawaban lain, Bitbucket mempromosikan repo pribadi tanpa batas.
- 5 pengguna: Gratis
- 10 pengguna: $ 10 / bln.
- 25 pengguna: $ 25 / bln.
- 50 pengguna: $ 50 / bln.
- 100 pengguna: $ 100 / bln.
- Tidak terbatas $ 200 / bln.
tampaknya tidak memiliki cara mengatur repositori secara hierarkis.
Tidak yakin persis apa yang Anda maksud dengan "hierarkis" (mungkin karena saya tidak terbiasa dengan SVN).
Saya tidak yakin apakah ini akan membantu, tetapi Anda bisa melihat tabel perbandingan ini untuk melihat bagaimana perintah membandingkan / berbeda:
Apakah ada sesuatu yang saya lewatkan yang akan memungkinkan saya untuk menggunakan repositori git dengan hierarki dan memeriksa potongan-potongan yang saya butuhkan / bekerja dengannya, seperti yang saya lakukan saat ini dengan SVN?
Percabangan?
Apakah GitHub (atau pesaing, seperti BitBucket) memiliki beberapa fitur organisasi proyek yang saya lewatkan?
Tidak yakin apakah ini akan membantu, tetapi Anda mungkin melihat:
Git dilengkapi dengan alat GUI bawaan untuk melakukan ( git-gui ) dan penjelajahan ( gitk ), tetapi ada beberapa alat pihak ketiga untuk pengguna yang mencari pengalaman khusus platform.
... sekali lagi, tidak yakin apakah ada alat yang dapat membantu Anda merasakan apa yang mungkin terjadi.
Untuk lebih jelasnya, saya tidak yakin dengan Anda tingkat keahlian Git ... jika Anda baru mengenal Git / GitHub, menggunakan GUI mungkin merupakan cara cepat / mudah bagi Anda untuk merasakan sesuatu. Saya pribadi suka menggunakan GitHub resmi untuk aplikasi Mac / Windows.
Kegagalan itu, apa "cara git" yang diterima secara umum untuk menangani situasi ini (membuang proyek yang tidak dimaksudkan untuk rilis, menyimpannya secara offline, menggabungkannya entah bagaimana, dll, dll.)?
Jika saya jadi Anda, saya akan menggunakan repositori.
Berapa banyak repositori pribadi yang Anda butuhkan?
Jika Anda ingin menggunakan GitHub, salah satu solusinya mungkin dengan mendapatkan paket termurah dan menggunakan beberapa repo pribadi untuk menampung semua tes / kode non-publik Anda. Anda bisa menggunakan struktur folder di main
cabang Anda untuk mempertahankan struktur hierarkis, atau Anda bisa menggunakan beberapa cabang untuk menjaga hal-hal lebih terpisah.
Kiat: Jika Anda menggunakan versi Git yang lebih baru, Anda dapat menarik cabang tertentu menggunakan git clone -b mybranch --single-branch git://sub.domain.com/repo.git
:
Saya harus memperingatkan Anda, menggunakan cabang untuk mengatur kode (seperti folder) sebenarnya bukan cara terbaik untuk melakukan sesuatu (meskipun, tidak ada yang mengatakan Anda tidak bisa menuju rute ini).
(Lihat jawaban saya di sini untuk info terkait sehubungan dengan cabang GitHub. )
Sekali lagi, saya pikir beberapa repo adalah cara untuk pergi.
Anda mungkin bertanya pada diri sendiri apakah kode Anda benar-benar perlu pribadi; mungkinkah Anda bisa go public dengan kode tersebut tanpa dampak?
Letakkan pustaka di GitHub, terus hosting SVN saya sendiri untuk semua proyek lainnya, gunakan solusi non-VCS untuk backup di luar situs (blech),
Jika Anda menuju rute ini, Dropbox (atau yang serupa) mungkin merupakan cara yang baik untuk mendapatkan beberapa bentuk kontrol versi dan sinkronisasi untuk cadangan luar-situs Anda.
Letakkan perpustakaan dan perangkat lunak yang saya rencanakan untuk rilis di GitHub (masing-masing sebagai publik dan pribadi), terus hosting SVN saya sendiri untuk proyek yang tidak terlalu saya pedulikan dan saya hanya akan meninjau kembali untuk menyegarkan ingatan saya tentang bagaimana menerapkan XYZ, memutuskan bahwa saya bersedia untuk menghapusnya jika rumah saya meledak (blech ganda),
Ini membawa saya kembali ke pertanyaan "Apakah Anda sudah membayar untuk hosting? Jika demikian, Anda dapat menginstal host Git Anda sendiri"; keuntungannya adalah, Anda dapat memiliki semua kode sumber di bawah payung Git, bahkan jika itu tidak semuanya berada di host yang sama (yaitu, gunakan GitHub untuk hal-hal umum yang ingin Anda pamerkan).
Letakkan semuanya di [GitHub dan / atau BitBucket], berurusan dengan memiliki beberapa repositori konyol dengan mencari apa yang saya butuhkan / mempertahankan beberapa set pointer offline ke akun [GitHub dan / atau BitBucket] saya (triple blech)
---> Lihat jawaban singkat saya di atas. ^^^^^^