git灵活分支,容灾性强,异地协作方便。
svn为集中式的版本控制,git为分布式的版本控制

Git 是一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型的各种
项目。
Git 易于学习,占地面积小,性能极快。 它具有廉价的本地库,方便的暂存区域和多个工作
流分支等特性。其性能优于 Subversion、CVS、Perforce 和 ClearCase 等版本控制工具。

版本控制工具

1.1 集中式版本控制工具

CVS、SVN(Subversion)、VSS……

  • 集中化的版本控制系统诸如 CVS、SVN 等,都有一个单一的集中管理的服务器,保存
    所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或
    者提交更新。多年以来,这已成为版本控制系统的标准做法。
  • 这种做法带来了许多好处,每个人都可以在一定程度上看到项目中的其他人正在做些什
    么。而管理员也可以轻松掌控每个开发者的权限,并且管理一个集中化的版本控制系统,要
    远比在各个客户端上维护本地数据库来得轻松容易。
  • 事分两面,有好有坏。这么做显而易见的缺点是中央服务器的单点故障。如果服务器宕
    机一小时,那么在这一小时内,谁都无法提交更新,也就无法协同工作。

git-分布式版本控制_版本控制工具

1.2 分布式版本控制工具

Git、Mercurial、Bazaar、Darcs……

  • 像 Git 这种分布式版本控制工具,客户端提取的不是最新版本的文件快照,而是把代码
    仓库完整地镜像下来(本地库)。这样任何一处协同工作用的文件发生故障,事后都可以用
    其他客户端的本地仓库进行恢复。因为每个客户端的每一次文件提取操作,实际上都是一次
    对整个文件仓库的完整备份。
  • 分布式的版本控制系统出现之后,解决了集中式版本控制系统的缺陷:
  1. 服务器断网的情况下也可以进行开发(因为版本控制是在本地进行的)
  2. 每个客户端保存的也都是整个完整的项目(包含历史记录,更加安全)
    git-分布式版本控制_版本控制工具_02

git-分布式版本控制_本地库_03


文章目录


1.基本命令

1. 查看版本

git-分布式版本控制_git_04
git的相关命令

git-分布式版本控制_版本控制工具_05

2.git init

初始化仓库
git-分布式版本控制_本地库_06

3. git add

将本地库的文件传上给暂存区

git-分布式版本控制_版本控制工具_07

4.git commit -m “” xxx

将暂存区的文件提交到本地库
git-分布式版本控制_版本控制工具_08

5.git reset --hard xxx

git-分布式版本控制_git_09
git-分布式版本控制_版本控制工具_10

6.git remote add origin xxx/git push -u origin master

git-分布式版本控制_本地库_11
git-分布式版本控制_git_12
上传成功

7.原理介绍

Git底层为指针移动

git-分布式版本控制_git_13

2.分支操作

git-分布式版本控制_本地库_14

2.1 什么是分支

版本控制中,会同时控制多个任务,为每一个任务,我们都可以创建每一个任务的单独分支。使用分支意味着程序员可以把自己的工作从开发主线上分离出来,开发这里的分支的同时不影响主线

git-分布式版本控制_本地库_15

2.2 分支的指令

git-分布式版本控制_本地库_16

git-分布式版本控制_git_17

1.git branch -v/git branch xxx
git-分布式版本控制_git_18
2.git checkout xxx
git-分布式版本控制_本地库_19

3.git merge xxx
git-分布式版本控制_本地库_20

2.3 创建分支和切换分支图例

git-分布式版本控制_本地库_21
master、hot-fix 其实都是指向具体版本记录的指针。当前所在的分支,其实是由 HEAD
决定的。所以创建分支的本质就是多创建一个指针。
HEAD 如果指向 master,那么我们现在就在 master 分支上。
HEAD 如果执行 hotfix,那么我们现在就在 hotfix 分支上
所以切换分支的本质就是移动 HEAD 指针。

3.git_idea

3.1 git定位

git-分布式版本控制_git_22

3.2 初始化仓库

git-分布式版本控制_版本控制工具_23
git-分布式版本控制_本地库_24

3.3 添加到暂存区

右键点击项目选择 Git -> Add 将项目添加到暂存区。

git-分布式版本控制_本地库_25

3.4 添加到本地库

git-分布式版本控制_git_26
git-分布式版本控制_本地库_27

3.5 切换版本

在 IDEA 的左下角,点击 Version Control,然后点击 Log 查看版本git-分布式版本控制_本地库_28
右键选择要切换的版本,然后在菜单里点击 Checkout Revision。

git-分布式版本控制_git_29

3.6 创建分支

git-分布式版本控制_本地库_30
git-分布式版本控制_本地库_31
git-分布式版本控制_git_32

3.7 切换分支

git-分布式版本控制_git_33
git-分布式版本控制_本地库_34

3.8 合并分支

git-分布式版本控制_git_35