• <Git命令使用>当前版本,历史版本,版本切换


    添加修改仓库中文件,用到的git命令是

    git add <xx>

    git commit -m "xxx"

    首先要说一下,在操作系统文件系统中更改仓库目录里的文件只是更改文件而已,而git管理系统并没有任何变化,我们使用git add和git commit命令是在改变git版本管理系统。

    使用git log命令可以显示从最近到最远的提交日志,加上 --pretty=oneline参数可以精简显示内容。

    git内部有个指向当前版本的HEAD指针,当回退版本时,Git仅仅是把HEAD指向你要退回的指定版本。版本回退使用git reset命令。

    git reset --hard HEAD^            //恢复到上个版本。

    git reset --hard e475a

    当前版本是HEAD,上一个版本是HEAD^,上上一个版本是HEAD~2,往上100个版本是HEAD~100,以此类推。当然,--hard后面的参数有两种,可以是HEAD^指针,也可以是版本号的前几位。

    (这里简单说一下,版本号也就是commit id,是一个SHA1计算出来的一个非常大的数字,用16进制表示)

     如果我们使用git reset回到了过去的某个版本,再使用git log查看提交日志,可以发现当前版本之后的版本都看不到了,这不是说那些后来的版本都删除了,只是因为git log指令本身只显示从HEAD指针往前的提交历史。我们依然可以使用git reset --hard 指令回到后来的某个版本。另外还可以使用git reflog命令查看全部提交和版本切换历史。

    总结:

    HEAD指向的版本就是当前版本,使用命令git reset --hard <commit_id>可以在历史版本间穿梭,同时仓库内的文件也会恢复到指定历史版本。

    git log  查看从HEAD指针往前的全部历史版本。

    git reflog 查看命令历史。

  • 相关阅读:
    初识React
    前端跨页面传值 cookie,sessionStorage,url传参
    commonJS 和 es6规范 的引入导出(摘自简书sf)
    Vue2.x 添加element UI 组件
    python3 基础1
    webapck 插件HtmlWebpackPlugin的使用以及webpack 热更新;
    ES6 基础(set数据结构和map数据结构)
    ansible批量部署模块(二)
    ansible批量部署(一)
    ssh远程管理
  • 原文地址:https://www.cnblogs.com/dynmi/p/12235455.html
Copyright © 2020-2023  润新知