• Git简单操作及原理


    设置签名:

    ​ 用户名:tom
    ​ Email地址:goodMorning@atguigu.com
    ​ git config user.name tom_pro
    ​ git config user.email goodMorning@atguigu

    作用:区分不同开发人员的身份,无其他作用
    辨析:这里设置的签名和登录远程库(代码托管中心)的账号、密码没有任何关系
    命令:(就近原则:二者都没有不允许)
    	项目级别/仓库级别:仅在当前本地库范围内有效
    	系统级别:登录当前操作系统的用户范围有效	
    	--local / --global / 
    查看项目配置保存的位置:cat .git/config
    

    显示日志:

    ​ git log
    ​ git log --pretty=oneline
    ​ git log --oneling 备注:只显示当前版本之前的版本,不显示之后的版本
    ​ git reflog 备注:HEAD@{移动到当前版本需要的步数}
    ​ 多屏显示方式:空格向下翻页、b向上翻页、q退出

    版本前进后退:

    ​ 本质:HEAD

    ​ 基于索引值操作(最好用)

    git reset --hard 局部索引值
    

    ​ 使用^符号(只能后退)

    ​ git reset --hard HEAD^ 向后退一个版本

    ​ git reset --hard HEAD^^^ 向后退三个版本

    ​ 使用~符号

    git reset --hard HEAD~3

    reset的三个参数对比:
    	--soft:
    		仅仅在本地库移动HEAD指针
    		
    	--mixed:
    		在本地库移动HEAD指针
    		重置暂存区
    	--hard:
    		在本地库移动HEAD指针
    		重置暂存区
    		重置工作区
    

    比较文件差异:

    ​ git diff 文件名

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

    ​ git diff 本地库中历史版本 文件名

    ​ 将工作区中的文件和本地库历史记录比较

    分支管理:

    分支的好处:

    分支操作:

    ​ 查看分支:git branche -v

    ​ 创建分支:git branch 分支名称

    ​ 切换分支:git checkout 分支名称

    ​ 合并分支:1)切换到主分支上 git checkout 被合并分支名,增加新内容

    ​ 2)执行merge命令 git merge 有新内容分支名

    解决冲突:

    Git基本原理

    快照:

    每一个文件节点都有一个hash值

    对各个版本存储的信息

    创建分支等于创建一个指针

    分支的切换:HEAD指向的分支名称切换了

    master分支变化了

  • 相关阅读:
    jquery的each()详细介绍【转】
    牛客-小w的a=b问题
    HDU-6707-Shuffle Card(很数据结构的一道题)
    HDU-6672-Seq
    牛客-随机数
    牛客-小阳的贝壳
    HDU-4417-Super Mario
    牛客-Corn Fields
    HDU-2665-Kth number
    线段树模板
  • 原文地址:https://www.cnblogs.com/hk-zsg/p/11569783.html
Copyright © 2020-2023  润新知