初次使用Git前的配置
- 在命令行模式里输入以下命令:
git config --global user.name "用户名"
git config --global user.email "邮箱"
接下来使用:
git list
查看配置是否成功
理论基础
- Git 记录的是什么 Git将每个版本独立保存
- 三棵树 工作区域、暂存区域和Git仓库
- Git 的工作流程
- 在工作目录中添加、修改文件
- 将需要进行版本管理的文件放入暂存区域
- 将暂存区域的文件提交到Git仓库
- Git管理的文件有三种状态:
- 已修改(modified)
- 已暂存(staged)
- 已提交(committed)
实战
- 初始化文件夹:
git init
- 将文件提交到暂存区域
git add . 或者 git add 文件名
- 将文件提交到仓库:
git commit -m "变更信息或者说明"
- 将工作目录的文件放到Git仓库只需两步:
- git add 文件名
- git commit -m “你干了啥”
查看状态
git status
- 将最近一次的暂存区域恢复
git reset HEAD
- 恢复上次更改的内容(当前工作的内容被覆盖)
git checkout --FILE
- 查看历史提交记录
git log
回到过去
- 回到上一个快照
git reset --mixed HEAD~(上上级~2(几级就是数字几))
reset 命令的选项
- git reset –mixed HEAD~
- 移动HEAD的指向,将其指向上一个快照
- 将HEAD移动后指向的快照回滚到暂存区域
-
git reset –soft HEAD~
- 移动HEAD的指向,将其指向上一个快照
- git reset –hard HEAD~ 1.移动HEAD的指向,将其指向上一个快照 2.将HEAD移动后指向的快照回滚到暂存区域 3.将暂存区域的文件还原到工作目录
-
不仅可以往回滚,还可以往前滚
- git reset 版本快照的ID号
比较暂存区域和工作目录
git diff
- 比较两个历史快照
git diff 快照ID1 快照ID2
- 比较当前工作目录和暂存区域内的快照
git diff --cached 快照ID
修改最后一次提交
- 在实际开发中,你可能会遇到以下两种情景:
- 情景一:版本刚一提交(commit)到仓库,突然想起漏掉两个文件还没有添加(add)。
- 情景二:版本刚一提交(commit)到仓库,突然想起版本说明写的不够全面,无法彰显你本次修改的重大意义……
- 执行带 –amend 选项的commit提交命令。Git就会”更正”最近一次提交。
git commit -amend -m ""
- 将暂存区的文件恢复到工作目录
git checkout -- filename
- 删除暂存区的文件
- 该命令删除的只是工作目录和暂存区域的文件,也就是取消跟踪,在下次提交时不纳入版本管理。
git rm filename
强制删除暂存区和工作区的文件
git rm -f filename
重命名文件
git mv oldfilename newfilename
Git分支
其他版本控制系统的分支
创建分支
git branch 分支名称
- 创建并切换到分支
git checkout -b 分支名
切换分支
git checkout 分支名
查看log
git log --decorate --oneline(一行显示一个)
- 实际开发中的分支
合并分支
git merge 分支名称
删除分支
git branch --delete 分支名