每天进步一点点,关注我们哦,每天分享测试技术文章
码同学抖音 :小码哥聊软件测试
git具有最优的存储能力,在没有远端git服务器的情况下,git本地就可以独立作为版本管控系统,这其中.git裸仓库中起了关键作用,那么我们一起来看看.git下都放了哪些文件。
打开Git Bash,切换到项目目录,具体命令,如下所示:
之前我们了解过如何生成一个git仓库,使用命令git init,创建完毕后,它会在当前路径下生成.git文件夹(或者叫目录),这个里面就装了git最核心的信息,我们一起来探秘.git中都有哪些内容。
先通过以下命令进入到.git目录。
01
Git目录下文件清单
然后看看我的.git目录下都有哪些文件?
通过以下命令获取:
02
HEAD
以上这么多文件,哪些是我们经常使用的呢?
HEAD就是我们经常要使用的文件,这个文件中存放的是什么内容呢?
一说到引用肯定是有指向的,这个引用具体指向哪里呢?refs/heads/temp。
之前为了演示git log创建了temp分支。
* 标记,表示我们当前所在的工作分支。
HEAD文件中存的这个引用,说明我当前本地的git仓库中,正在工作的分支是temp。
那么,此时我们做切换分支操作,HEAD文件中的内容会变吗?
我们执行切换分支命令,如下所示:
执行切换master分支命令,提示我们,这个操作必须运行在工作路径下。
因此,我们来查看下我们当前的目录是不是工作目录。
通过以下截图可见,我们在.git目录下,确实没有在工作目录下。
然后我们执行如下命令切换到工作目录下:
然后再次执行刚刚的切换master分支命令。
免费领取 码同学软件测试 课程笔记+超多学习资料+完整视频+最新面试题,可以转发文章 + 私信「码同学666」获取资料哦
然后我们再来查看.git下的HEAD文件中的内容。
从以下接口可见,HEAD文件中的内容发生了变化,
之前HEAD文件中的指向是temp,现在变成了master。
也就是说,当我们切换分支的时候,HEAD文件中的内容跟着替换为当前分支名称。
告诉我们,我们当前的工作分支是哪个分支。
以上就是.git目录下HEAD文件存放内容的说明。
03
config
除此之外,我们还可能会经常接触config这个文件。
我们先来看看config文件中有什么信息?
这里面我们比较熟悉的是,如下截图所示,[user]块中的内容,之前我们介绍config的时候,
如果在当前仓库下面用local的方式,给用户的name以及email,同global不同的情况下,
执行git config local操作,就会将相应的信息记录在config文件中,我们可以验证下。
将name值改成rainbow,然后保存退出。
这个config修改后,是不是直接影响到local配置呢?我们执行命令试试。
如下截图所示,返回的信息太多,我们仅仅想知道username信息
这个时候可以用另外一个命令查看,git命令后面直接跟你关注的东西
从如下命令返回结果信息,可见我的账 确实更改了。
验证完毕,我们需要将自己的账 信息改回去,用什么命令?使用如下命令进行重新指定
注意:user.name后面是空格,而不是等 。
然后我们再查看config文件是否账 变更回helen。
先通过命令查看账 是否变更为原来的helen。
通过如下截图可见,账 变更为原来的helen。
然后我们再来查看config文件下的账 是否也变更为原来的helen。
从如下截图可见,配置文件config中name值也变更回原来的helen。
总结,.git目录下的config文件中,存放的是git的配置信息,更确切的说,是跟本地仓库相关的配置信息都保存在config这个文件中
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!