git--版本创建、回滚的原理及演练
生活随笔
收集整理的這篇文章主要介紹了
git--版本创建、回滚的原理及演练
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
聲明:文章原稿來源于恩師稀哥。
1. 工作原理
我們來簡單說明一下git的工作原理
① 在版本庫中創建文件的時候,就有了文件的第一個版本,于此同時會生成一個指針指向這個版本
② 當修改了code.txt中的內容以后,就生成了第二個版本,但是這個版本是依賴上一個版本的,在這個版本中僅僅會記錄文件發生了那些修改。在有了一個新版本之后,這個指針會指向最新的版本。
③ 通過修改指針的位置可以實現回退到某個版本,表示方式有兩種,一種是用^,一種使用~,如下
- HEAD^ 或者 HEAD~1:表示上一個版本
- HEAD^^ 或者 HEAD~2:表示上兩個版本
通過上面的方式回退到第一個版本之后,指針就指向了版本1
2.基本使用
其中HEAD表示當前最新版本,HEAD^ 表示當前版本的前一個版本,HEAD^^表示當前版本的前前個版本,也可以使用HEAD~1 表示當前版本的前一個版本,HEAD~100表示當前版本的前100版本。
# git reset --hard HEAD^ HEAD is now at c410627 v1 # git log commit c4106273b0b87ac6f42042589663900af3617837 Author: root<root@localhost.localdomain> Date: Thu Dec 27 19:54:24 2018 +0800v1# cat code.txt first line 執行命令后使用git log查看版本記錄,發現現在只能看到版本1的記錄,cat code.txt查看文件內容, 現在只有一行,也就是第一個版本中code.txt的內容。①首先執行命令將版本回退到版本1
# git reset --hard HEAD^ HEAD is now at c410627 v1 # git log commit c4106273b0b87ac6f42042589663900af3617837 Author: root<root@localhost.localdomain> Date: Thu Dec 27 19:54:24 2018 +0800v1②把當前終端關閉,然后打開新的終端,已經無法看到之前操作留下的版本2的版本號了
這里就要用到了 git reflog 命令來查看我們的操作記錄
③可以看到版本2的版本號,在使用命令進行回滾
# git reset --hard 1a3efe2 HEAD is now at 1a3efe2 v2 -newversion總結
以上是生活随笔為你收集整理的git--版本创建、回滚的原理及演练的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 已经yum安装的基础上,升级编译安装gi
- 下一篇: git--分支管理:创建、合并、冲突解决