国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

git版本回退(git reset、git revert、git stash)

這篇具有很好參考價值的文章主要介紹了git版本回退(git reset、git revert、git stash)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。


本文 git 相關(guān)命令:

git reset: 回退版本,可指定某一次提交的版本。git reset [--soft | --mixed | --hard] commitId。

git revert: 撤銷某個提交,做反向操作,生成新的commitId,原有提交記錄保留。git revert commitId。
git commit --amend: git commit –amend既可以對上次提交的內(nèi)容進(jìn)行修改,也可以修改提交說明
git status: 查看文件在工作區(qū)和暫存區(qū)的狀態(tài)。

git log: 查看代碼提交記錄,找到需要回滾的目標(biāo)版本號。

回退的兩種情況

修改README.md前

回退分兩種情況:

1.已 commit,未push到遠(yuǎn)程倉庫。

git版本回退(git reset、git revert、git stash)
修改README.md后

git版本回退(git reset、git revert、git stash)

1.1 git reset --soft (撤銷commit)
  • 修改了README.md,文檔內(nèi)容,并提交到了本地倉庫
    git版本回退(git reset、git revert、git stash)
  • 此時回滾README.md,通過 git reset --soft HEAD^ 回退上一個commit
    git版本回退(git reset、git revert、git stash)
    注意: HEAD^的意思是上一個版本,也可以寫成HEAD~1 ,如果你進(jìn)行了2次commit,想都撤回,可以使用HEAD~2,這個命令僅僅是撤回commit操作,寫的代碼仍然保留
1.2 git commit --amend(修改commit 提交的內(nèi)容)
  • 修改了README.md,文檔內(nèi)容,并提交到了本地倉庫
    git版本回退(git reset、git revert、git stash)

  • 輸入 git commit --amend,利用vim語法,點擊i進(jìn)入編輯模式,修改對應(yīng)文本內(nèi)容,點擊Esc退出編輯模式,按鍵:wq強(qiáng)制退出

    git版本回退(git reset、git revert、git stash)git版本回退(git reset、git revert、git stash)
    git版本回退(git reset、git revert、git stash)

1.3 git reset --mixed(撤銷 commit 和 add 兩個動作)
  • 此時已經(jīng)執(zhí)行add和commit兩個操作,git狀態(tài)是這樣的

    git版本回退(git reset、git revert、git stash)

  • 輸入git reset --mixed HEAD^ 撤銷 commit 和 add 兩個動作
    git版本回退(git reset、git revert、git stash)

2.已 commit,并且push到了遠(yuǎn)程倉庫。

2.1 git stash save “XXX”( 如果當(dāng)前已修改了代碼文件,發(fā)現(xiàn)需要進(jìn)行版本回退,可以使用,將當(dāng)前文件緩存)
  • 輸入git stash save "XXX"(能夠?qū)⑺形刺峤坏男薷模üぷ鲄^(qū)和暫存區(qū))保存至堆棧中,用于后續(xù)恢復(fù)當(dāng)前工作目錄)
    git版本回退(git reset、git revert、git stash)

  • 輸入git stash pop/apply ,將當(dāng)前stash中的內(nèi)容彈出,并應(yīng)用到當(dāng)前分支對應(yīng)的工作目錄上。
    注:pop將堆棧中最近保存的內(nèi)容刪除(棧是先進(jìn)后出),aplly不會刪除保存的內(nèi)容
    git版本回退(git reset、git revert、git stash)
    git版本回退(git reset、git revert、git stash)
    可以使用git stash apply + stash名字(如stash@{1})指定恢復(fù)哪個stash到當(dāng)前的工作目錄。

  • git stash clear (清除堆棧中的所有 內(nèi)容)

    本文主要講版本回退,相關(guān)緩存操作,請自行查找

2.2 git reset --hard 版本號(撤銷并舍棄版本號之后的提交記錄)
  • git log找到要回退到的版本號,當(dāng)前第五次修改已緩存尚未提交,處于第四次提交的版本,此處要回退到第三次版本
    git版本回退(git reset、git revert、git stash)

  • 輸入git reset --hard be125c629a893e28f62439cf71b1e9671c73a4bb 回退到第三版本
    git版本回退(git reset、git revert、git stash)
    此時README.md文檔內(nèi)容為
    git版本回退(git reset、git revert、git stash)

  • git push -f(強(qiáng)制推送到遠(yuǎn)程,之前提交都會被覆蓋,慎用)
    git版本回退(git reset、git revert、git stash)
    注: 通過reset的方式,此時可用看到提交記錄和文件都被撤銷了,reset之后,后面的版本就找不到了使用需謹(jǐn)慎,不推薦使用。

2.3 git revert 版本號(撤銷,但是保留了提交記錄)
  • git log找到要回退到的版本號,當(dāng)前處于第四次提交的版本,此處要回退到第三版本
    git版本回退(git reset、git revert、git stash)

  • 輸入git revert -n be125c629a893e28f62439cf71b1e9671c73a4bb^..HEAD 回退到第三版本

    git版本回退(git reset、git revert、git stash)

  • 提交文件,并查看日志
    git版本回退(git reset、git revert、git stash)
    git版本回退(git reset、git revert、git stash)
    注: 這種方式不會把版本往前回退,而是生成一個新的版本。所以,你只需要讓別人更新一下代碼就可以了,你之前操作的提交記錄也會被保留下來文章來源地址http://www.zghlxwxcb.cn/news/detail-478093.html

到了這里,關(guān)于git版本回退(git reset、git revert、git stash)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Git 基礎(chǔ)知識--stash 存儲、reset 回退及恢復(fù)

    Git 基礎(chǔ)知識--stash 存儲、reset 回退及恢復(fù)

    簡介 Git 提供了 stash 存儲的功能,即當(dāng)你在工作到一半突然需要切換到另一個分支上,但又不想提交時,可將當(dāng)前做出的修改通過 git stash 命令存儲起來,之后再從其中重新讀取之前的狀態(tài)。 注意事項 若修改的文件沒有執(zhí)行 git add 即未被跟蹤,則該文件不會被 git stash 存儲,

    2023年04月10日
    瀏覽(47)
  • git reset 命令詳解 git revert命令詳解。

    git reset 命令詳解 git revert命令詳解。

    git reset 命令格式為: git reset [ --soft | --mixed | --hard ] [ commitid ] 在git的這些命令中g(shù)it reset是最長常用的,也是最危險的最容易被誤用的。它的主要參數(shù)是:soft,mixed,hard它們告訴git,當(dāng)執(zhí)行reset是,要對index和working copy做什么。 soft: –soft參數(shù)只將其它的commit重置到你選定的HEAD,

    2024年02月15日
    瀏覽(35)
  • 使用git reset回退版本

    使用git reset回退版本

    在介紹版本回退之前先介紹下如何git log命令,可以查看我們的提交歷史記錄。 先看下我的提交記錄 最新的提交中,我在main.cpp中添加了這兩行代碼 ?此時,我們就可以使用 git reset --hard 命令進(jìn)行版本回退 git reset --hard 后面跟你要回退的那個版本的commit值,我們回退到 \\\"配置文

    2024年02月09日
    瀏覽(26)
  • git reset 版本回退或撤銷上一次pull操作

    git reset 版本回退或撤銷上一次pull操作

    在拉取分支準(zhǔn)備合并的時候,發(fā)現(xiàn)分支拉錯了,不想提交,這時候你應(yīng)該回退一下你所拉取的分支 比如我現(xiàn)在已經(jīng)執(zhí)行完git pull 了,但是想回頭git pull之前的內(nèi)容 upstream 是我遠(yuǎn)程分支 pro是我遠(yuǎn)程分支的生產(chǎn)環(huán)境 現(xiàn)在我們先看看歷史提交記錄 git reflog 打印的更為詳細(xì)一些 這里

    2024年02月11日
    瀏覽(26)
  • git reset回退版本【Git異?!縔ou are in ‘detached HEAD‘ state

    git clone項目后,在main分支回退版本,出現(xiàn)報錯 detached HEAD稱為分支游離狀態(tài) 1、從遠(yuǎn)程庫clone下來一個遠(yuǎn)程的repository; 2、clone下來之后,git自動在本地建立了一個本地分支master,并自動與遠(yuǎn)程庫master關(guān)聯(lián); 3、現(xiàn)在在操作checkout其他分支名(dev_v1);因為本地的工作區(qū)目前是剛剛

    2024年02月11日
    瀏覽(42)
  • Git基礎(chǔ)操作:git stash 相關(guān)命令舉例講解

    git stash 是 Git 提供的一個強(qiáng)大的工具,它允許你臨時保存(或“暫存”)當(dāng)前工作目錄和索引(暫存區(qū))的改動,從而可以切換分支或執(zhí)行其他操作而不影響當(dāng)前的工作狀態(tài)。下面是 git stash 的一些常用命令及其解釋: git stash 這條命令會將當(dāng)前的工作目錄和暫存區(qū)的改動保存

    2024年01月24日
    瀏覽(32)
  • Git reset、revert用法

    reset是刪除之前的提交記錄,所有的提交點都會被清除,我們看下執(zhí)行前后的git log區(qū)別 執(zhí)行完成后發(fā)現(xiàn)個人分支第三個提交好像從來沒有出現(xiàn)過一樣,建議不要使用reset,畢竟會把別人的提交點徹底刪除 revert 將指定提交的代碼給清除掉,提交記錄還存在,相當(dāng)于添加一個新

    2024年02月10日
    瀏覽(17)
  • git的 reset 和 revert 區(qū)別

    git的 reset 和 revert 區(qū)別

    線上master分支不可信,需要回到某個分支; 但是很多人習(xí)慣把一個需求,分多次commit,于是會出現(xiàn)下面這種情況 基于這種情況,git revert 就不如 git reset好用,可以借助Idea,直接通過 git reset --hard 指向需要回退到的commit,然后隨便找個地方,敲上一個空格,產(chǎn)生一次新的commi

    2024年03月21日
    瀏覽(58)
  • Git 回退(Revert)操作后無法重新合并的問題

    公司使用碼云企業(yè)版作為代碼托管平臺,采用master/dev分支分類進(jìn)行代碼管理,matser分支為保護(hù)分支,只能審核后在網(wǎng)頁端提交合并(請求評審)。 此時dev代碼合并到master后發(fā)現(xiàn)有問題需要回退上次一合并,此時只能在請求評審處點擊回退按鈕,回退后master并沒有改動,而是

    2024年02月11日
    瀏覽(24)
  • git 的rebase、reset、revert區(qū)別?

    rebase 、 reset 、和 revert 是 Git 中用于修改提交歷史的三個不同的命令,它們的作用和效果有所不同。 1. rebase : git rebase 用于將一個分支的提交移到另一個分支上,并重新應(yīng)用這些提交。主要有兩種用途: 整理提交歷史 :將多個小的提交合并成一個更為清晰的提交歷史,避免

    2024年01月21日
    瀏覽(30)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包