有些時候我們提交的遠端**(最新的**)也許還不如上次寫的好,於是我們就想回退到以前的版本。那麼怎麼回退呢
對了,回退之前還是先備份下。。
? 1
2
3
git log
//檢視提交的歷史
git log --pretty=oneline
//如果嫌上面的輸出資訊過多可以使用這條(只輸出版本號)
git reset --hard head^
//回到上個版本,git reset --hard head^^是上上個版本
好了現在你已經回到上個版本了
接下來如果你直接提交會發現提交不了, 說遠端做了更改需要先pull一下, 如果pull那就又回到最新版本了,相當於沒回退。
思路:我們可以新建乙個分支temp,然後把回退後的**提交到temp分支上暫存,然後刪除master主分支,新建乙個master分支,提交現有**到master上。
? 1
2
3
4
5
6
7
8
9
10
11
12
/*1.新建分支*/
git checkout -b temp
//新建分支並切換到temp分支
git push origin temp:temp
//將**push到temp分支
/*2.刪除主分支*/
git push origin --delete master
//刪除遠端主分支
git branch -d master
//刪除本地主分支
/*3.新建主分支*/
git checkout -b master
//新建主分支並切換到主分支
git push origin master
//提交主分支
/*4.刪除暫存分支*/
git branch -d temp
git push origin --delete temp
注意:在github下,操作(刪除或重建分支)需要在github網頁上切換當前分支,如你要刪除master,就要將分支切換到建的temp分支上。(可以理解為自己不能刪除自己)
(專案主頁->settings即可看到
git回退版本
把檔案從暫存區域或歷史記錄中複製到工作目錄,用來丟棄本地修改。git reset files 用來撤銷最後一次git add files,你也可以用git reset 撤銷所有暫存區域檔案。git reset option commitid 用來撤銷歷史記錄,option選項 soft,hard,m...
git 回退版本
git commit amend 提交後的一次補救,比如忘記在上一次提交時提交某些檔案,需要做一些修改後再提交。這個命令就像本次提交覆蓋了上一次提交,在倉庫歷史中不會顯示上一次提交 git reset head 將檔案從暫存區移到工作區,把暫存區的修改回退到工作區 git checkout 檔名 回...
Git版本回退
1 檢視檔案修改歷史 git log 返回的是commit後的操作記錄 git log pretty oneline 也可以使用這個命令格式化日誌輸出 2 版本回退 git reset hard head 回退到上乙個版本 git reset hard head 100 會退到第100個版本,例如現...