用好 Git 和 SVN,轻松驾驭版本管理
本�从 Git 与 SVN 的对���,介绍如何通过 Git-SVN 开始使� Git,并总结平时�作�频率使�到的 Git 常�命令。
⼀
、Git vs SVN
Git 和 SVN 孰优孰好,每个�有不同的体验。
Git是分布式的,SVN是集中式的
这是 Git 和 SVN 最�的区别。若能掌握这个概念,两者区别基本搞懂�半。因为 Git 是分布式的,所以 Git �持离线�作,在
本地可以进�很多操作,包括接下来将要重磅推出的分�功能。� SVN 必须联�才能正常�作。
Git复杂概念多,SVN简单易上⼿
所有同时掌握
G
i
t
和
S
V
N
的开发者都必须承认,
G
i
t
的命令实在太多了,�常�作需要掌握
a
dd
,
c
o
mm
i
t
,
s
t
a
t
u
s
,
f
e
t
c
h
,
p
u
s
h
,
r
e
b
a
s
e
等,若要熟练掌握,还必须掌握
r
e
b
a
s
e
和
m
e
r
g
e
的区别,
f
e
t
c
h
和
p
u
ll
的区别等,除
此之外,还有
c
h
e
rr
y
-
p
i
c
k
,
s
u
bm
o
d
u
l
e
,
s
t
a
s
h
等功能,仅是这些名词听着都很绕。
在易�性这��,SVN对于新�来说会更有好�些。但是从另外���看,Git 命令多意味着功能多,若我们能掌握�部分 Git的
功能,体会到其中的奥妙,会发现再也回不去 SVN 的时代了。
Git分
⽀
廉价,SVN分
⽀
昂贵
在版本管理�,分�是很常使�的功能。在发布版本前,需要发布分�,进��需求开发,需要 feature 分�,�团队还会有
开发分�,稳定分�等。在�团队开发过程中,常常存在创建分�,切换分�的求。
Git 分�是指针指向某次提交,� SVN 分�是拷⻉的�录。这个特性使 Git 的分�切换�常迅速,并且创建成本�常低。
�且 Git 有本地分�,SVN �本地分�。在实际开发过程中,经常会遇到有些代码没写完,但是需紧急处理其他问题,若我们使�
Git,便可以创建本地分�存储没写完的代码,待问题处理完后,再回到本地分�继续完成代码。
⼆、Git 核⼼概念
Git 最核�的�个概念就是�作流。
�作区(Workspace)是电脑中实际的�录。
暂存区(Index)类似于缓存区域,临时保存你的改动。仓
库区(Repository),分为本地仓库和远程仓库。
从 SVN 切换到 Git,最难理解并且最不能理解的是暂存区和本地仓库。熟练使� Git 后,会发现这简直是神设计,由于这两者
的存在,使许多�作变得易管理。
通常提交代码分为�步:
1.
git add从�作区提交到暂存区
2.
git
commit从暂存区提交到本地仓库
3.
git push或git svn dcommit从本地仓库提交到远程仓库
�般来说,记住以下命令,便可进��常�作了(图�来源于�络):