Git基础教程,复习回顾

git本地结构

工作区,暂存区,本地库

基础操作

查看历史记录

  • git log
  • git log –pretty=oneline:将记录在一行展示
  • git log –oneline:比上边更简洁的方式展示
  • git reflog:增加显示如果要回退某个版本需要移动几步

记录太多时,多屏控制方式

  • 空格:向下翻页
  • b:向上翻页
  • q:退出

前进后退

git有个HEAD指针的概念,来指向当前出去哪一个版本

  • 基于索引值操作:既可以前进又可以后退

    • git reset –hard 索引值
  • 使用^符号:只能后退,不能前进

    • git reset –hard HEAD^:每一个^表示回退一个版本
  • 使用~符号

    • git reset –hard HEAD~3:表示回退3个版本

reset命令的三个参数对比

  • –soft

    • 仅仅在本地库移动HEAD指针
  • –mixed

    • 在本地库移动HEAD指针
    • 重置暂存区
  • –hard

    • 在本地移动HEAD指针
    • 重置暂存区
    • 重置工作区

删除文件并找回

  • 前提:删除前,文件存在时的状态提交到了本地库
  • 操作:git reset –hard [指针位置]
    • 删除操作已经提交到本地库:指针位置指向历史记录
    • 删除操作尚未提交到本地库:指针位置使用HEAD

比较文件差异

  • git diff [文件名]

    • 将工作区中的文件和暂存区的进行比较
  • git diff [本地库中历史版本] [文件名]

    • 将工作区中的文件和本地库历史记录进行比较
  • 不带文件名则比较多个文件

分支管理

创建分支

git branch [分支名]

查看分支

git branch -v

切换分支

git checkout [分支名]

合并分支

  • 第一步:切换到接受修改的分支(被合并,增加新内容)上

    • git checkout [被合并分支名]
  • 第二步:执行merge命令

    • git merge [有新内容分支名]

解决冲突

  • 冲突的表现

  • 冲突的解决

    • 第一步:编辑文件,删除特殊符号
    • 第二步:把文件修改到满意的程度,保存退出
  • 第三步:git add [文件名]

  • 第四步:git commit -m “日志信息”

    • 注意:此时commit一定不能带具体文件名