一、Git的介绍:
Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。
Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。
二、安装地址
Git 各平台安装包下载地址为:http://git-scm.com/downloads
Git的操作流程:
三、 Git的工作区 、暂存区和版本库
- 工作区:就是你在电脑里能看到的目录。
- 暂存区:英文叫 stage 或 index。一般存放在 .git 目录下的 index 文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。
- 版本库:工作区有一个隐藏目录 .git,这个不算工作区,而是 Git 的版本库。
四、Git的基本操作
git init - 初始化仓库。
git add . - 添加文件到暂存区。
git commit - 将暂存区内容添加到仓库中
创建仓库命令:
git init 初始化仓库
git clone 拷贝一份远程仓库,也就是下载一个项目。
提交修改:
git add 添加文件到仓库
git status 查看仓库当前的状态,显示有变更的文件。
git diff 比较文件的不同,即暂存区和工作区的差异。
git commit 提交暂存区到本地仓库。
git reset 回退版本。
git rm 删除工作区文件。
git mv 移动或重命名工作区文件
五、分支
我们的开发就像是游戏的任务,默认是在主线(master)上进行开发的。许多时候,还有各种支线任务,git 支持我们创建分支来进行项目开发
查看分支
git branch
创建分支
# 新的分支会存在主分支的所有信息
git branch 分支名称
切换分支
git checkout 分支名称
# 也可以使用 checkout -b 来新建分支,并切换过去
git checkout -b 分支名称
分支合并
# B 合并到 A,需要切换到 A 分支
## 合并后会产生一个新的分支节点(A分支中)
git merge 被合并分支
# 查看已经合并的分支
git branch --merged
# 查看未合并的分支
git branch --no-merged
删除分支
# 如果分支为未合并状态,则不允许删除
git branch -d 分支名称
# 强制删除
git branch -D 分支名称
# 删除后,分支记录会保留
合并记录
rebase
# 合并 HEAD 前两个祖先记录
git rebase -i HEAD~2
合并冲突
有的时候,不同的分支可能会对同一个文件内容和位置上进行操作,这样在合并的过程中就会产生冲突
- 查看冲突文件
- 修复冲突内容
- 提交