Git简单操作及原理
发布日期:2021-10-22 18:10:52 浏览次数:6 分类:技术文章

本文共 1128 字,大约阅读时间需要 3 分钟。

设置签名:

​ 用户名: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 局部索引值

1188452-20190922224335602-915635232.png

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

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

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

1188452-20190922224402256-1013322982.png

​ 使用~符号

git reset --hard HEAD~3

1188452-20190922224409870-416341743.png

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

1188452-20190922225041531-238447355.png

1188452-20190922224431653-355333152.png

1188452-20190922225050363-724347799.png

比较文件差异:

​ git diff 文件名

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

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

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

分支管理:

1188452-20190922224500538-1409947094.png

分支的好处:

1188452-20190922224508936-2130183920.png

分支操作:

​ 查看分支:git branche -v

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

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

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

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

解决冲突:

1188452-20190922224522402-2039889505.png

1188452-20190922224533436-859971218.png

Git基本原理

1188452-20190922225302419-207260014.png

1188452-20190922224549069-2003643524.png

快照:

1188452-20190922225418978-689280295.png

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

1188452-20190922224717806-2041279942.png

对各个版本存储的信息

1188452-20190922224816833-248646924.png

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

1188452-20190922224834532-1055436329.png

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

1188452-20190922224848581-1455332887.png

master分支变化了

1188452-20190922224900903-71907117.png

转载于:https://www.cnblogs.com/hk-zsg/p/11569783.html

转载地址:https://blog.csdn.net/weixin_30402343/article/details/102315362 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:黑马 - poi Excel2
下一篇:try - with - resource

发表评论

最新留言

路过按个爪印,很不错,赞一个!
[***.219.124.196]2024年03月24日 12时44分19秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

wget linux java 32_通过wget在Linux上下载Java JDK会显示在许可证页面上 2019-04-21
babylonjs 设置面板位置_babylonjs 空间坐标转为屏幕坐标 2019-04-21
oracle里面如何查询sqlid,CSS_oracle中如何查看sql, --查询表状态:  select uo.O - phpStudy... 2019-04-21
oracle 查询中用case,oracle case when 在查询时候的用法。 2019-04-21
oracle正在运行的程序包,ORACLE PL/SQL编程详解之程序包的创建与应用 2019-04-21
php局部页面滚动,在访问另一页面后保留浏览器滚动位置 - php 2019-04-21
jmeter运行linux命令行,Jmeter在linux上运行(命令行运行Jmeter) 2019-04-21
linux服务器怎么添加站点,如何增加站点或虚拟主机及文件说明 2019-04-21
linux系统输入指令,Linux系统基础 - 基本操作命令 2019-04-21
linux设备管理命令,Linux命令(设备管理).doc 2019-04-21
linux 中文utf-8转gbk编码,Linux平台下 GBK编码转UTF-8编码 2019-04-21
linux安装软件在boot,在Linux系统上安装Spring boot应用的教程详解 2019-04-21
linux进入用户user1主目录,Linux系统命令提示符为[user1@localhost root]当前用户所在目录为( )... 2019-04-21
取消linux自动登录,linuxdeepin 如何取消自动登录啊? 2019-04-21
linux线程存储,Linux系统编程手册:线程:线程安全和每线程存储 2019-04-21
linux以root账号登陆gnome,CentOS 7 - 以root身份登入Gnome 2019-04-21
linux crontab 备份数据库 空文件,Linux下使用crontab自动备份数据库 2019-04-21
linux批处理模式,巧用linux-top的批处理模式 2019-04-21
linux信号量机制例题,第二章 信号量机制及几个经典例题 2019-04-21
linux ba 模拟,在你的 Python 游戏中模拟引力 | Linux 中国 2019-04-21