π[SVN] SVNμ΄λ?
SVNμ΄λ?
SVN(SubVersion) μ΄λ, Git/GitHub
μ κ°μ νμκ΄λ¦¬/μμ€κ΄λ¦¬ λꡬμ΄λ€.
SVNμ λ€μκ° μμ
νλ νλ‘μ νΈμ κ²½μ° λ²μ κ΄λ¦¬λ κ°μΈμ΄ μμ ν μμ€μ ν΅ν©κ³Ό κ°μ λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄ μ¬μ©νλ€.
νμκ΄λ¦¬: μμ€μ λ³νλ₯Ό λμμμ΄ κ΄λ¦¬νλ κ²
νλ‘μ νΈμ μμ€λ SVN μλ²μ Trunk λΌλ κ³³μ μμΉνλλ°, λ‘컬 νκ²½μ Trunkμ μμ€λ₯Ό λ€μ΄(Update) λ°μ μμ λ° μΆκ° ν μ
λ‘λ(Commit) νλ λ°©μμ΄λ€.
μμ λ§μ μμ€λ₯Ό λ€λ₯Έ κ°λ°μλ€κ³Ό λ 립μ μΌλ‘ μμ νλ €λ©΄ Branch(μλ³Έ μμ€μ λλκ°μ§)λ₯Ό λ§λ€μ΄ μμ ν λ€μ, Mergeλ₯Ό νλ©΄ Trunk μμ€μ λ³ν©λλ λ°©μμ΄λ€.
- Git/GitHubμ μ μ¬νλ€.
μ©μ΄ μ 리
Repository: νλ‘μ νΈ νμΌ λ° λ³κ²½ μ λ³΄κ° μ μ₯λλ μ₯μ
Checkout: μ μ₯μμμ μ΅μ λ²μ μ μμ€μ½λλ₯Ό μ΅μ΄λ‘ λ°μμ€λ κ²
Import: Repositoryμ 맨 μ²μ νμΌλ€μ μ±μ°λ κ²
Export: λ²μ κ΄λ¦¬ νμΌλ€μ λΊ μμ νμΌλ§ λΉΌλ΄λ κ²
Update: λ‘컬 μ μ₯μμ μλ νμΌλ€μ μ μ₯μμ μ΅μ λ²μ μΌλ‘ λ΄λ € λ°κΈ°
Commit: λ‘컬 μ μ₯μμ λ³κ²½λ λ΄μ©μ μλ²λ‘ μ μ‘ / Checkoutν νμΌμ μμ μ¬νμ κ°±μ ν¨
Revert: λ‘컬 μ μ₯μμ λ΄μ©μ μ΄μ μνλ‘ λλ¦Ό
Add: λ²μ κ΄λ¦¬ λμμΌλ‘ νμΌ λ±λ‘
Trunk: κ°λ° μμ€λ₯Ό commitνμ λ κ°λ° μμ€κ° λͺ¨μ¬μ§λ κ³³ / νλ‘μ νΈμμ κ°μ₯ μ€μ¬μ΄ λλ λ©μΈ λλ ν 리(μμ€μ νμΌ ν¬ν¨)
Branch: Trunkμμ λΆλ¦¬/볡μ¬ν μμ€λ‘, λ²μ λ³ λ°°ν¬νμ λ§λ€κ±°λ Trunkμ λ³λλ‘ μ΄μνκ²½μ μν μμ νλ μμ€ κ΄λ¦¬ λͺ©μ
Tag: νΉμ μμ μ μν 보쑴 λͺ©μ μΌλ‘ μ¬μ©ν¨ / μ₯κΈ°μ μΌλ‘ 1.0, 1.1 λ±μ λ²μ λ³λ‘ μμ€μ½λλ₯Ό λ°λ‘ μ μ₯
μ₯μ
μμμ 컀λ°
μ μ§μνλ―λ‘ λ€λ₯Έ μ¬μ©μμ 컀λ°κ³Ό μν€μ§ μμ -> μ€ν¨ μ λ‘€λ°± κ°λ₯- μ§κ΄μ
νμΌκ³Ό λλ ν 리μ μμ , μ΄λ, μ΄λ¦ λ³κ²½, λ³΅μ¬ μ§μ - μμ€νμΌ μ΄μΈμ
λ°μ΄λ리 νμΌ
λ ν¨μ¨μ μΌλ‘ μ μ₯ κ°λ₯ - λλ ν°λ¦¬λ λ²μ κ΄λ¦¬ κ°λ₯
- μ μ₯μμ ν¬κΈ°μ μκ΄ μμ΄ μΌμ ν μκ° μμ κ°μ§μΉκΈ°(branch)λ νκ·Έ κ°λ₯
- μ²λ¦¬ μλκ° μλμ μΌλ‘ λΉ λ¦
λ¨μ
- μμ€μ½λλ Merge(λ³ν©)κ° κ°λ₯νμ§λ§, λ°μ΄λ리 νμΌμ μ΄λ ν μͺ½μ λ²λ¦΄ μ λ°μ μμ
- κ°λ³ κ°λ°μλ§μ κ°λ° μ΄λ ₯μ κ°μ§ μ μμ
.svn
λλ ν°λ¦¬λ‘ μΈν΄ μ μ₯μκ° λ€μ μ§μ λΆν΄λ³΄μ- μ¦μ 컀λ°μΌλ‘ μΈν΄ 리λΉμ λ²νΈκ° ν¬κ² μ¦κ°ν μ μμ
- μΆ©λ νλ₯ μ΄ λμ
Git(GitHub)μμ μ°¨μ΄μ
κΈ°λ³Έ ꡬ쑰 μ°¨μ΄
SVN
SVNμ μ€μ μλ²μμ μ 체 μ½λ λ³κ²½ λ° μ΄λ ₯μ μ μ₯νλ μ€μμ§μ€μ ꡬ쑰λ₯Ό μ¬μ©νλ€.
κ°λ°μλ€μ μ€μ μλ²μ μ°κ²°ν΄μΌ νλ©°, μμ
ν λ΄μ©μ μ€μ μλ²μ 컀λ°νκ³ μ΅μ λ³κ²½ μ¬νμ λ°μμμΌνλ€.
Git
Gitμ λΆμ° ꡬ쑰λ₯Ό μ¬μ©νλ©°, κ° κ°λ°μμ λ‘컬 μ μ₯μμ μ 체 μ½λ λ° λ³κ²½ μ΄λ ₯μ΄ λ³΅μ
λλ€.
κ°λ°μλ€μ λ‘컬 μ μ₯μμμ μμ
νκ³ , λ³κ²½ μ¬νμ μ격 μ μ₯μμ λκΈ°ν νλ€.
μ΄λ‘ μΈν΄ μ€νλΌμΈμμλ μμ
μ΄ κ°λ₯νλ€λ μλμ μ΄μ μ΄ μλ€.
μν¬νλ‘μ°
SVN
SVNμ μμ
μμ μ μ μ€μ μλ²μμ μ΅μ μ½λλ₯Ό λ°μμ¨ ν(Update), μμ
μ΄ λλ ν μ€μ μλ²μ λ³κ²½ μ¬νμ λ°μ(Commit)νλ€.
λ³κ²½ μ¬νμ΄ κ²ΉμΉλ κ²½μ° μΆ©λμ΄ λ°μν μ μκ³ , μΆ©λμ΄ λ°μνλ©΄ ν΄κ²°μ ν΄μΌν 컀λ°μ΄ κ°λ₯νλ€.
Git
Gitμ κ°λ°μκ° λ‘컬 μ μ₯μμμ λ
립μ μΌλ‘ μμ
ν μ μκΈ° λλ¬Έμ, μμ
ν λ‘컬 μ μ₯μμ 컀λ°νκ³ μ격 μ μ₯μμ λκΈ°ν ν λλ§ μΈν°λ· μ°κ²°μ΄ νμνλ€.
μΆ©λμ΄ λ°μν κ²½μ° λ‘컬μμ μΆ©λμ ν΄κ²°νκ³ , μ격 μ μ₯μμ λ°μ(Push)νλ€.
λΈλμΉ κ΄λ¦¬
SVN
SVNμ λΈλμΉλ₯Ό λ§λ€ λ μ 체 νμΌμ 볡μ¬
νμ¬ μλ‘μ΄ λλ ν 리λ₯Ό μμ±νλ λ°©μμ μ¬μ©νλ€.
λΈλμΉλ₯Ό μμ±ν λλ§λ€ μλ‘μ΄ νμΌμ΄ μΆκ°λκ³ , μ΄λ‘ μΈν΄ μ μ₯μμ μ©λμ΄ μ¦κ°νλ€.
Git
Gitμ λΈλμΉλ₯Ό λ§λ€ λ κΈ°μ‘΄μ μ»€λ° νμ€ν 리λ₯Ό μ°Έμ‘°νλ λ°©μμ μ¬μ©νλ€.
λ°λΌμ λΈλμΉλ₯Ό μμ±ν΄λ μλ‘μ΄ νμΌμ΄ μΆκ°λλ κ²μ΄ μλλ―λ‘, μ μ₯μμ μ©λμ΄ μ¦κ°νμ§ μλλ€.
μ΄ μΈμλ λ€μν μ°¨μ΄μ μ΄ μ‘΄μ¬νλ€.
μ€μ νμ
μμλ λ λꡬ λ€ λ§μ΄ μ¬μ©λκ³ μλ€.
μ°Έκ³ μλ£
SVN μ΄λ? SVN μ¬μ© μ΄μ
[SVN] SVNμ΄λ ? μ₯μ , λ¨μ , μ©μ΄ μ 리
λκΈλ¨κΈ°κΈ°