Apa yang perlu Anda sadari, berasal dari CVS, adalah bahwa Anda tidak lagi membuat direktori saat membuat cabang.
Tidak ada lagi "tag lengket" (yang dapat diterapkan hanya pada satu file), atau "tag cabang".
Cabang dan tag adalah dua objek berbeda di Git, dan mereka selalu berlaku untuk semua repo.
Anda tidak lagi (dengan SVN saat ini) harus secara terstruktur membuat repositori Anda dengan:
branches
myFirstBranch
myProject
mySubDirs
mySecondBranch
...
tags
myFirstTag
myProject
mySubDirs
mySecondTag
...
Struktur itu berasal dari kenyataan bahwa CVS adalah sistem revisi dan bukan sistem versi (lihat Kontrol sumber vs. Kontrol Revisi? ).
Itu berarti cabang ditiru melalui tag untuk CVS, salinan direktori untuk SVN.
Pertanyaan Anda masuk akal jika Anda terbiasa checkout tag, dan mulai bekerja di dalamnya .
Yang tidak seharusnya Anda lakukan;)
Tag seharusnya mewakili konten yang tidak dapat diubah , hanya digunakan untuk mengaksesnya dengan jaminan untuk mendapatkan konten yang sama setiap kali.
Di Git, sejarah revisi adalah serangkaian komitmen, membentuk grafik.
Cabang adalah satu jalur dari grafik itu
x--x--x--x--x # one branch
\
--y----y # another branch
1.1
^
|
# a tag pointing to a commit
- Jika Anda mencentang tag, Anda harus membuat cabang untuk mulai bekerja darinya.
- Jika Anda checkout cabang, Anda akan langsung melihat komit terbaru ('KEPALA') cabang itu.
Lihat jawaban Jakub Narębski untuk semua teknis, tetapi terus terang, pada titik ini, Anda tidak perlu (belum) semua detail;)
Poin utamanya adalah: sebuah tag menjadi pointer sederhana ke sebuah komit, Anda tidak akan pernah bisa mengubah kontennya. Anda membutuhkan cabang.
Dalam kasus Anda, setiap pengembang mengerjakan fitur tertentu:
- harus membuat cabang mereka sendiri di repositori masing-masing
- melacak cabang dari repositori kolega mereka (yang bekerja pada fitur yang sama)
- menarik / mendorong untuk berbagi pekerjaan Anda dengan rekan-rekan Anda.
Alih-alih melacak langsung cabang kolega Anda, Anda hanya dapat melacak cabang dari satu repositori pusat "resmi" tempat setiap orang mendorong pekerjaannya untuk mengintegrasikan dan membagikan karya semua orang untuk fitur khusus ini.