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

Git移除commit過的大文件

這篇具有很好參考價(jià)值的文章主要介紹了Git移除commit過的大文件。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

前言:在提交推送本地更改至倉(cāng)庫(kù)時(shí),誤將大文件給提交了,導(dǎo)致push時(shí)報(bào)錯(cuò)文件過大,因此需要將已經(jīng)commit的大文件移除后再push

若已知要?jiǎng)h除的文件或文件夾路徑,則可以從第4步開始

1.對(duì)倉(cāng)庫(kù)進(jìn)行gc操作

 $ git gc

2.查詢大文件

git verify-pack -v .git/objects/pack/pack-*.idx | sort -k 3 -g | tail -5

?注意此處是從.git文件夾中查詢的,因此需要再倉(cāng)庫(kù)根目錄里執(zhí)行

git 刪除commit文件,Git,git

顯示的結(jié)果則為大文件,前6位id為文件提交id?

3.獲取id對(duì)應(yīng)的文件名

git rev-list --objects --all | grep id名稱

如:git rev-list --objects --all | grep 78b35d

git 刪除commit文件,Git,git

?id后面的就是文件全路徑名

4.刪除文件? (若知道文件路徑,則直接執(zhí)行下面命令即可)

git filter-branch --force --prune-empty --index-filter 'git rm -rf --cached --ignore-unmatch 文件名' --tag-name-filter cat -- --all

如:

git filter-branch --force --prune-empty --index-filter 'git rm -rf --cached --ignore-unmatch CustomPhysics2DIntProject2022.3/Build/01 - 副本/UnityPlayer.dll' --tag-name-filter cat -- --all

若要?jiǎng)h除某個(gè)目錄,則直接填目錄即可 如:

git filter-branch --force --prune-empty --index-filter 'git rm -rf --cached --ignore-unmatch CustomPhysics2DIntProject2022.3/Build' --tag-name-filter cat -- --all

git 刪除commit文件,Git,git

如果出現(xiàn)異常:?Cannot rewrite branches: You have unstaged changes.

執(zhí)行命令:

git stash

后重新刪除

?5.刪除指向舊提交的指針

rm -rf .git/refs/original/

6.刪除log

rm -rf .git/logs/

7.放棄所有未關(guān)聯(lián)對(duì)象恢復(fù)的可能性

git reflog expire --expire=now --all

8.清理垃圾重新打包

git repack -A -d    //重新打包

git 刪除commit文件,Git,git

git gc --aggressive --prune=now //清理垃圾,重新打包

git 刪除commit文件,Git,git

9.強(qiáng)行推送遠(yuǎn)端

git push --force
git push --force --all

10.多個(gè)分支清理文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-647581.html

git checkout branchName    //切換分支,多個(gè)分支需要分別清理

到了這里,關(guān)于Git移除commit過的大文件的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • git恢復(fù)commit過的代碼

    git恢復(fù)commit過的代碼

    找回丟失的satsh記錄,只有commit?才能夠被恢復(fù)。 也可以執(zhí)行g(shù)it log命令找到commit id。 1、 修改完還未git add :使用 git checkout 回滾 使用暫存區(qū)的文件覆蓋工作區(qū),所以執(zhí)行完? git add . ?之后,再執(zhí)行該命令是無(wú)效的。? git checkout . ?和? git add . ?是一對(duì)反義詞。 2、 git add提交

    2024年02月02日
    瀏覽(26)
  • 【經(jīng)驗(yàn)】Git|如何刪除錯(cuò)誤的commit?(存在大文件無(wú)法push的commit、不需要的commit等情況、清除所有commit的情況)

    【經(jīng)驗(yàn)】Git|如何刪除錯(cuò)誤的commit?(存在大文件無(wú)法push的commit、不需要的commit等情況、清除所有commit的情況)

    如果你在本地多次提交了commit,但是其中有一個(gè)commit交錯(cuò)了、或者無(wú)法推送, 就像下面這張圖這樣: 你可以安裝以下步驟操作。 通過 git log 想清楚自己需要切換到哪一個(gè)commit狀態(tài),查看commit id: 將倉(cāng)庫(kù)的狀態(tài)恢復(fù)到 能夠正常提交的狀態(tài)/需要?jiǎng)h除的狀態(tài)的上一個(gè)commit狀態(tài)

    2024年02月03日
    瀏覽(29)
  • git 常用基本命令, reset 回退撤銷commit,解決gitignore無(wú)效,忽略記錄或未記錄遠(yuǎn)程倉(cāng)庫(kù)的文件,刪除遠(yuǎn)程倉(cāng)庫(kù)文件

    git 常用基本命令, reset 回退撤銷commit,解決gitignore無(wú)效,忽略記錄或未記錄遠(yuǎn)程倉(cāng)庫(kù)的文件,刪除遠(yuǎn)程倉(cāng)庫(kù)文件

    https://blog.csdn.net/a704397849/article/details/135220091 idea 中 rest 撤銷commit過程如下: Git - Rest Head… 在To Commit中的HEAD后面加上^,點(diǎn)擊Reset即可撤回最近一次的尚未push的commit Reset Type 有三種: Mixed(默認(rèn)方式),保留本地源碼,回退 commit 和 index 信息,最常用的方式 Soft 回退到某個(gè)版

    2024年02月02日
    瀏覽(32)
  • git刪除指定commit

    git刪除指定commit

    git log ?二、找到被刪除的commit的下一個(gè)commit,執(zhí)行 git rebase -i commitId 例: 刪除 a0db3, 則執(zhí)行 git rebase -i 89d65,回車 三、保存修改 按 Esc 退出編輯模式,按 Shift + ‘;’ ,輸入 !wq( 保存文件并退出) 四、驗(yàn)證 git log 查看 commitID?a0db3 是否刪除

    2024年02月15日
    瀏覽(17)
  • 刪除誤提交的 git commit

    刪除誤提交的 git commit

    某次的意外 commit 中誤將密碼寫到代碼中并且 push 到了 remote repo 里面, 本文將圍繞這個(gè)場(chǎng)景討論如何彌補(bǔ). 在 Gitee 創(chuàng)建一個(gè)新的 Repo, clone 到本地 創(chuàng)建兩個(gè)文件, commit 后 push 到 remote 作為初始提交 在 Gitee 檢查提交成功: 分別修改兩個(gè)文件, 模擬 A.txt 中誤寫入了敏感信息, B.txt 屬

    2024年02月04日
    瀏覽(21)
  • Git修改與刪除commit記錄

    1、修改最近一次commit的信息 直接修改即可。 2、修改之前的commit的信息 其中 2 代表兩條,進(jìn)入VIM后按 i 或 o 之后將 pick 改為 edit ,在 ESC 后按 :wq 保存即可。 1、刪除push到遠(yuǎn)程服務(wù)器的最近c(diǎn)ommit 2、git rebase刪除push到遠(yuǎn)程服務(wù)器的某些commit 該命令執(zhí)行時(shí)極有可能出現(xiàn) reabase 沖

    2024年02月04日
    瀏覽(27)
  • git刪除已push的commit記錄

    git刪除已push的commit記錄

    問題: 1, commit注釋寫錯(cuò) 2, 發(fā)版時(shí),只允許有一條commit記錄,但代碼還push到遠(yuǎn)程了 3, 沒拉最新代碼,提交后合并代碼時(shí)有沖突 操作步驟: 提交歷史如圖: 代碼變更記錄如圖: git log 查出歷史提交記錄,找到需要?jiǎng)h除的那條記錄的上一個(gè)的commit-ID: 比如我要?jiǎng)h除第二次和第三次

    2024年02月08日
    瀏覽(21)
  • git 刪除某一次的提交(commit)

    git 刪除某一次的提交(commit)

    突然有同學(xué)問怎么刪除指定的提交,其他的保持不變。 大致的意思就是我先提交的是a,又提交了b,c是我最近的一次提交。然后項(xiàng)目變動(dòng),b的這次改動(dòng)不需要提交了,怎么把b的這次commit去掉,還不影響c。百度即可得到想要的答案。 下面我總結(jié)起來(lái),以備不時(shí)之需。 最主要

    2024年02月03日
    瀏覽(112)
  • idea 修改git 用戶名,郵箱,刪除commit

    idea 修改git 用戶名,郵箱,刪除commit

    第一步,在idea中右鍵項(xiàng)目 第二步,使用命令 參考:https://blog.csdn.net/qq_41458961/article/details/121785558 https://blog.csdn.net/zmm0413/article/details/108078400?spm=1001.2101.3001.6661.1utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-108078400-blog-127976786.pc_relevant_defaultdepth_1-utm_source=dist

    2024年02月11日
    瀏覽(43)
  • git如何恢復(fù)reset和刪除的commit代碼

    git如何恢復(fù)reset和刪除的commit代碼

    git reflog可以查看所有分支的操作記錄,包括reset的和drop commit的記錄 可以通過reset回滾到對(duì)應(yīng)的節(jié)點(diǎn) 如果我們只想恢復(fù)某一次誤刪除的commit,而不是整體回滾,可以使用cherry-pick命令將那一次的commit單獨(dú)拎到主分支中。 注:代碼恢復(fù)的前提是已經(jīng)commit過,commit過然后drop comm

    2024年02月12日
    瀏覽(21)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包