本文目的是掌握Git基础操作教程
一、Git简介
Git:分布式版本控制系统,使用仓库(Repository)来记录文件的变化
最流行的版本控制系统有两种:集中式(SVN)、分布式(Git)
二、Git操作
1.创建仓库
仓库(Repository),将仓库理解为一个目录,这个目录下的文件都可以被Git管理起来
(1)git init:在自己电脑本地直接创建一个仓库
(2)git clone:从远程服务器上克隆一个已经存在的仓库
2.工作区域和文件状态
工作区域有三种:工作区、暂存区、本地仓库
文件状态有四种:未跟踪、未修改、已修改、已暂存
3.添加和提交文件
(1)git status:查看仓库状态
(2)git add:将文件添加到暂存区(可以使用通配符 *.txt / 使用目录 .)
(3)git commit:将暂存区中的内容提交(注意:不会提交工作区中的内容)
(4)git log:查看仓库提交历史记录(可以使用--oneline查看简洁提交记录)
4.reset回退版本
git reset有三个参数:--soft / --hard / --mixed(默认参数)
5.diff查看差异
下面的图展示了git diff的功能,具体用法可以等用到时在查询
6.git rm删除文件
(1)rm <file>; git add file:先从工作区删除文件,然后再从暂存区中删除文件
(2)git rm <file>:把文件从工作区和暂存区中同时删除
(3)git rm --cached <file>:把文件从暂存区中删除,但是不删除工作区
7.忽略文件
.gitignore:告诉 Git 哪些文件或目录不需要被跟踪(track)和提交到版本库中
8.本地仓库和远程仓库
(1)git push <remote> <branch>:推送更新内容
(2)git pull <remote>:拉取更新内容
添加远程仓库 <远程仓库别名> <远程仓库地址>
查看远程仓库 <远程仓库名><分支名>
拉取远程仓库内容
三、Git分支
1.Git分支简介
2.分支常见操作
(1)git branch:查看分支列表
(2)git branch branch-name:创建分支
(3)git checkout branch-name / git switch branch-name:切换分支
(4)git merge branch-name:合并分支
(5)git branch -d branch-name(删除已合并分支) / git branch -D branch-name(删除未合并分支)
3.解决合并冲突
两个分支未修改同一文件的同一处位置:Git自动合并
两个分支修改了同一文件的同一处位置:产生冲突
解决方法
Step1:手工修改冲突文件,合并冲突内容
Step2:添加到暂存区(git add file)
Step3:提交修改(git commit -m "message")
4.两种方法合并
(1)Merge
优点:不会破坏原分支的提交记录,方便回溯查看
缺点:会产生额外的提交节点,分支图比较复杂
(2)Rebase
优点:不会新增额外的提交记录,形成线性历史,比较直观和干净
缺点:会改变提交历史,改变了当前分支branch out的节点 (避免在共享分支使用)