• 一个命令巧妙查看git版本演变史


    每天进步一点点,关注我们哦,每天分享测试技术文章

    本文章出自【码同学软件测试】

    码同学公众号:自动化软件测试,领取资料可加:Matongxue_8

    码同学抖音号:小码哥聊软件测试

    如何使用 git 命令查看 commit 演进历史呢?

    可以使用 git log 加相关参数实现:

    • $ pwd

    • $ ll

    • $ cd git-rainbow/

    • $ ll

    • $ cd mtxcrm/

    • $ ls -la

    例如:加--oneline ,可以实现查看git版本历史的commit简要列表:

    git log--oneline

    根据列表信息,可以查看每次版本变更都变更了哪些信息,当然信息比较简洁。从以上截图信息可知,一共发生了4次版本变更,分别执行的都是 move、add、重命名、新增文件操作,--oneline 这个参数在查找每次提交具体内容上还有很有帮助的。

    也可以指定最近几次的commit, 也就是仅仅只关心最近几次的 commit的信息查看,比如,查看最近2次的commit操作:

    git log -n2

    当然带n参数的这个git命令也可以组合oneline参数使用:

    git log -n2 --oneline

    存在多个分支的情况下,如何使用 git log 命令呢?

    比如,我们查看下本地有多少个分支?

    git branch -v

    从截图返回结果可见,当前只有 master 分支,创建一个新的临时的分支,叫 temp。

    git log

    git checkout -b temp cb8ec5dc05341d784934c912

    对 a.txt 文件稍作修改

    ls -la

    vi a.txt

    ls -la

    然后执行一次 commit 提交操作:

    git commit -m'modify a.txt'

    从如下截图所示提示信息可知,提交时需要加-a 参数:

    git commit -am'modify a.txt'

    然后我们再次查看下当前目录下分支总数:

    git branch -av

    免费领取码同学软件测试课程笔记+超多学习资料+完整视频+面试题,可加微信:Matongxue_8

    从以上截图可知,一共有两个分支,分别是 master、temp,并且我当前所在分支是 temp,此时使用 git log(后面不加任何参数的情况下)查看的是当前分支 temp 的历史提交信息列表:

    git log

    • HEAD 指向的是 temp

    • HEAD 没有指向 master

    所有分支的演进历史如何全部都查看到呢?

    此时可以增加--all 参数,来查看所有分支的演进历史:

    git log --all

    如果有10个分支,通过--all 参数,可以列出 10 个分支对应的 commit 历史演进信息,还可以图形化形式展示演进的历史:

    git log --all --graph

    从以上截图能清楚的看到,master 是有 3 个 commit 演进历史信息,如果只想查看就近的 n 个全部分支的演进历史,可以使用以下命令:

    git log --all -n3

    查看最近 3 个全部分支的演进历史,以下命令是以图形的方式查看最近 3 个全部分支演进历史:

    gitlog --all -n3 --graph

    注意,这里的-n3 是指所有分支取最近 3 次的 commit 记录,而不是当前分支的,如果加了--all 参数,再指定 temp 分支,统计的是 temp 分支的还是全部分支的呢?

    git log --oneline --all temp -n3

    从如下截图所示命令的返回可见,仍是是统计全部全部分支的 commit 提交信息的前 3 个,后面配的 temp 分支没有起到作用:

    如果没有--all 参数,指定 temp 分支,则 git log 命令的返回结果是 temp 分支的 commit 演 进历史

    git log --oneline temp

    如果没有--all 参数,指定 master 分支,则 git log 命令的返回结果是 master 分支的 commit 演进历史

    git log --oneline master

    可见在加了--all 参数后,即使再指定任何分支的情况下,还是以--all 参数,也就是全部分支的基础获取 commit 演进历史,指定的分支设置不起作用。

    以上这些是比较场景的git log命令,如果忘记git log参数,或者想查看其他git log的参数列表,可以使用git log的帮助命令进行查看

    git help --web log

    git log 的参数接口非常多:

    END

    免费领取码同学软件测试课程笔记+超多学习资料+学习完整视频 ☞ 可加:Matongxue_8/关注码同学公众号:自动化软件测试

    本文著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

  • 相关阅读:
    crm 4 注释与上传附件权限
    动态图片轮播
    PHP 连接 MSSQL
    php mssql 中文各种乱码
    百度地图逆地址解析
    Microsoft Visual C++ 2015 Redistributable(x64)
    服务器 vps 空间
    Python之路【第二篇】:Python基础(二)
    Python之路【第一篇】:Python简介和入门
    2016年会成为Java EE微服务年吗?
  • 原文地址:https://www.cnblogs.com/testfan2019/p/16105143.html
Copyright © 2020-2023  润新知