Git学习

Git

1. Git结构

2. 命令行操作

2.1 本地仓库初始化

git init 

2.2 设置签名

  • 项目级别/仓库级别: 仅在当前本地库范围内有效 ,信息保存位置: ./.git/config 文件

    git config user.name liuyao
    git config user.email liuyao9642@gmail.com
    
  • 系统用户级别: 登录当前操作系统的用户范围,在Mac或Linux中,信息保存位置: ~/.gitconfig 文件

    git config --global user.name tom_glb
    git config --global goodMorning_pro@atguigu.com
    

注:就近原则: 项目级别优先于系统用户级别, 二者都有时采用项目级别的签名。如果只有系统用户级别的签名, 就以系统用户级别的签名为准。二者都没有不允许

2.3 状态查看

查看工作区、 暂存区状态

git status

2.4 添加操作

将工作区中的新建的或者修改的添加到暂存区

git add [filename]

2.5 提交操作

将暂存区的内容提交到本地库

git commit -m "message" [filename]

2.6 查看提交记录

  • 查看详细的提交记录

    git log
    
  • 一行查看

    git log --pretty=oneline
    
  • 一行省略查看

    git log --oneline
    
  • 带HEAD指针的查看

    git reflog
    

    HEAD@{移动到当前版本需要多少步}

2.7 前进后退

本质就是改变HEAD的指向

  • 基于索引值

    git reset --hard [索引值]
    
  • 使用 ^ 符号,只能进行后退操作,一个 ^表示一步,可以使用多个

    git reset --hard HEAD^
    
  • 使用 ~ 符号,只能后退操作,后面跟数字n,表示n步

    git reset --hard HEAD~n
    

2.8 reset的三个参数

  • –soft 参数
    • 仅仅在本地库移动 HEAD 指针
  • –mixed 参数
    • 在本地库移动 HEAD 指针
    • 重置暂存区
  • –hard参数
    • 在本地库移动HEAD指针
    • 重置暂存区和工作区

2.9 删除文件找回

前提: 删除前, 文件存在时的状态提交到了本地库。

  • 操作: git reset --hard [指针位置]
    • 删除操作已经提交到本地库: 指针位置指向历史记录
    • 删除操作尚未提交到本地库: 指针位置使用 HEAD

2.10 比较文件差异

  • 将工作区中的文件和暂存区进行比较

    git diff [文件名]
    
  • 将工作区中的文件和本地库历史记录比较

    git diff [本地库中历史版本] [文件名]
    
  • 不带文件名比较多个文件

3. 分支操作

3.1 创建分支

git branch [分支名]

3.2 查看分支

git branch -v

3.3 切换分支

git checkout [分支名]

3.4 合并分支

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

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

    git merge [有新内容分支名]
    

3.5 解决冲突

  • 冲突表现

  • 冲突解决

    • 第一步: 编辑文件, 删除特殊符号
    • 第二步: 把文件修改到满意的程度, 保存退出
    • 第三步: git add [文件名]
    • 第四步: git commit -m “日志信息”
    • 注意: 此时 commit 一定不能带具体文件名
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值