Git 版本回退

Git reset

經過Git rest 命令實現版本回退git

第一步

經過提交記錄找到要回退的版本號bash

git reflog
複製代碼
c920c31 HEAD@{4}: commit: fix unit test bug
c43a105 HEAD@{5}: commit: proxy request param value
d2d8134 HEAD@{6}: commit: add proxy http request address
aca04dd HEAD@{7}: commit: add unit test
f6f9b44 HEAD@{8}: commit: disable eureka in test env
c7ddf92 HEAD@{9}: pull: Merge made by the 'recursive' strategy.
f96380b HEAD@{10}: checkout: moving from proxyOpt to test

複製代碼

第二步

經過git reset 命令回退版本服務器

git reset --hard d2d8134
複製代碼
d2d8134 HEAD@{1}: reset: moving to d2d8134
c920c31 (origin/test) HEAD@{2}: commit: fix unit test bug
c43a105 HEAD@{3}: commit: proxy request param value
d2d8134 HEAD@{4}: commit: add proxy http request address
aca04dd HEAD@{5}: commit: add unit test

複製代碼

其中,。而若是加上-–hard參數,則緩衝區中不會存儲這些修改,git會直接丟棄這部份內容。ui

第三步

推送到遠程分支,可使用 git push origin test --force 強制將分區內容推送到遠程服務器。spa

git push origin test --force
複製代碼

reset 和revert區別rest

  • git revert是用一次新的commit來回滾以前的commit,git reset是直接刪除指定的commit。
  • git reset 是把HEAD向後移動了一下,而git revert是HEAD繼續前進,只是新的commit的內容和要revert的內容正好相反,可以抵消要被revert的內容。
相關文章
相關標籤/搜索