婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 解決使用commit提交大文件無法推送到遠程庫問題及git rebase使用詳解

解決使用commit提交大文件無法推送到遠程庫問題及git rebase使用詳解

熱門標簽:地圖標注項目幾個月 聯通外呼系統電腦app軟件 400電話申請到底哪家好 宿遷怎么辦理400電話 鶴壁高頻外呼系統多少錢一個月 外呼系統怎么群發短信 蘇州呼叫中心外呼系統哪家強 400電話辦理費用低 谷歌地圖標注日期

解決這個問題并沒有特別的(刪除提交歷史中某個文件,然后重新push),但是由于開始的使用失誤,中間有使用git rebasegit reset命令處理,所以特此記錄下

大文件無法push到遠程倉庫

問題

首先,故事(事故)的起因是這樣的。

某次git push(類似測試使用,沒有分支)到遠程倉庫時發生如下無法提交大文件的報錯(大文件是一個pdf文件)

$ git push
Enumerating objects: 204, done.
Counting objects: 100% (204/204), done.
Delta compression using up to 4 threads
Compressing objects: 100% (183/183), done.
Writing objects: 100% (187/187), 419.00 MiB | 2.21 MiB/s, done.
Total 187 (delta 21), reused 0 (delta 0)
remote: Resolving deltas: 100% (21/21), completed with 12 local objects.
remote: Powered by GITEE.COM [GNK-3.8]
remote: error: File: db501995ac30070d50bdc115a7708f9ba84332d3 403.57 MB, exceeds 100.00 MB.
remote: Use command below to see the filename:
remote: git rev-list --objects --all | grep db501995ac30070d50bdc115a7708f9ba84332d3
remote: Please remove the file from history and try again. (https://gitee.com/help/articles/4232)
To gitee.com:findmoon/xxxx.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@gitee.com:findmoon/xxxx.git'

根據提示,如下查看大文件是哪個

commit的大文件無法push到遠程庫解決辦法

首先說一下解決辦法,需要修改提交歷史,刪除已提交到本地倉庫的大文件的提交記錄,

從commit的提交歷史中刪除指定文件的命令為git filter-branch --tree-filter 'rm -f 文件名' HEAD

如下,刪除大文件

$ git filter-branch --tree-filter 'rm -f "Electron/pdf/677969 xxxx xxx.pdf"' HEAD
Rewrite d1244f8fbc1f08b473bd498c023b09bd8ac3246b (12/12) (156 seconds passed, remaining 0 predicted)
Ref 'refs/heads/master' was rewritten

執行刪除成功會返回Ref 'refs/heads/master' was rewritten提示,如果返回unchanged則表示沒有任何更改。

如果文件路徑包含空格需要用引號將刪除文件路徑包含起來。

然后重新push推送成功。

整體操作如下:

git filter-branch命令:

參考自git誤commit大文件導致不能push問題解決

git commit后的回滾

撤銷已經提交的commit有兩種方法:

使用 git reset --hard HEAD^

使用 git rebase -i HEAD~n

git reset --hard 丟棄最新的提交

代碼提交后,需求發生變化導致之前提交的已經不合適,或者 代碼提交后發現有嚴重bug,需要回滾可是使用這個命令:

git reset --hard HEAD^

1,HEAD^ 表示 最新提交HEAD位置往回數一個提交, 幾個 ^ 就往回數幾個提交;

2,HEAD~n 表示 最新提交HEAD位置往回數n個提交

reset 命令只能回滾最新的提交。如果只想刪除指定的某個提交,而保留最新的一次或兩次commit,reset就無法做到了。

reset命令git 刪除某次指定的提交

git rebase -i 丟棄指定提交

如果想撤銷中間某次commit的情況,可以使用如下的命令:

git rebase -i HEAD~2(列出最新的兩次提交,然后決定對應提交的操作)

rebase -irebase --interactive 的縮寫;

git rebase -i 不僅可以刪除commit, 還可以修改commit。 具體的可以查看rebase中提示的參數

如下執行git rebase查看命令參數:

$ git rebase -i HEAD~2
pick 71add05 20200225同步
pick 45d4805 測試刪除中間某次commit

# Rebase 36b460a..45d4805 onto 36b460a (2 commands)
#
# Commands:
# p, pick commit> = use commit
# r, reword commit> = use commit, but edit the commit message
# e, edit commit> = use commit, but stop for amending
# s, squash commit> = use commit, but meld into previous commit
# f, fixup commit> = like "squash", but discard this commit's log message
# x, exec command> = run command (the rest of the line) using shell
# b, break = stop here (continue rebase later with 'git rebase --continue')
# d, drop commit> = remove commit
# l, label label> = label current HEAD with a name
# t, reset label> = reset HEAD to a label
# m, merge [-C commit> | -c commit>] label> [# oneline>]
# . create a merge commit using the original merge commit's
# . message (or the oneline, if no original merge commit was
# . specified). Use -c commit> to reword the commit message.
#
# These lines can be re-ordered; they are executed from top to bottom.
#
# If you remove a line here THAT COMMIT WILL BE LOST.
#
# However, if you remove everything, the rebase will be aborted.
#
# Note that empty commits are commented out

常用的如下:

  • edit: 使用本次提交,在rebase到這次提交時候,會暫停下來等待修正
  • pick:使用本次提交,不操作修改
  • drop:刪除這次提交

如下,修改查看最近3次的提交,然后刪除(drop)倒數第三次commit,保存退出即可將倒數第三次commit中提交的所有內容刪除

回滾最新的提交 :git resetgit rebase 命令都可以

回滾中間某次提交: git rebase 可以, git reset 不可以

如果提交已經同步到遠程倉庫,需要使用git push origin -f branch(分支名) 來將回滾也同步到遠程倉庫(master 分支謹慎使用 -f)

主要參考自Git回退代碼到某次commit的實現方法

git rebase

git rebase執行失敗后的退出

像上面,執行git rebase有可能導致失敗,具體表現為bash中的倉庫標識變為了(master|REBASE 1/10)(m/n視reabse編輯內容而定)

解決辦法是:執行git rebase --abort即可退出這個錯誤,回退到當前分支中,且數據和文件也都能恢復。

不小心git rebase后出現(master|REBASE 1/10)的解決辦法

git rebase成功后的回退

上面講的是git rebase失敗后的退出(,或回退),如果成功刪除了某次commit,導致最終一些文件或數據丟失,如何恢復呢?

不要輕易使用 git rebase -i HEAD 刪除某次提交

git rebase -i HEAD~2中刪除某次提交的話,這次提交的所有更改和新增文件會全部取消,覆蓋本地工作目錄中的文件,也就是刪除的這次提交和本次提交的上一次提交中間的所有更改都會取消,即使pick了刪除提交的下一次提交,也無法保留(保留到最新提交時所有文件和文件夾的狀態)

可以使用git reset --hard ID命令,直接恢復commit到指定的提交時刻。

git reflog查看git提交記錄

如上,可以直接看到需要恢復到的commit ID是多少。比如恢復到Id為71add05的時刻,執行git reset --hard 71add05等待恢復。本地倉庫和文件就能恢復到指定提交時刻。

恢復指定的某次commit成功。

git rebase 成功之后如何撤銷

Git rebase命令使用實戰

刪除文件后需要執行git add -Agit rm file>,將刪除添加到暫存區, 如果執行 git add. 是不行的,區別如下:

git add -A 保存所有的修改(包括刪除的文件、新增文件、已有文件的修改變更)git add . 保存新的添加和修改,但是不包括刪除git add -u 保存修改和刪除,但是不包括新建文件。

到此這篇關于記一次使用commit提交大文件無法推送到遠程庫解決問題過程及git rebase使用的文章就介紹到這了,更多相關commit提交大文件git rebase使用內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • 一不小心git rebase后出現(master|REBASE 1/10)的問題及解決辦法
  • Git rebase命令使用實戰
  • git rebase 成功之后撤銷的操作方法

標簽:莆田 錫林郭勒盟 哈爾濱 遵義 雙鴨山 襄陽 丹東 鄂爾多斯

巨人網絡通訊聲明:本文標題《解決使用commit提交大文件無法推送到遠程庫問題及git rebase使用詳解》,本文關鍵詞  解決,使用,commit,提,交大,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《解決使用commit提交大文件無法推送到遠程庫問題及git rebase使用詳解》相關的同類信息!
  • 本頁收集關于解決使用commit提交大文件無法推送到遠程庫問題及git rebase使用詳解的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    hitomi一区二区三区精品| 中文字幕一区三区| 欧洲一区二区av| 国产成人日日夜夜| 国产精品99久久久久久久女警| 免费成人美女在线观看| 性感美女极品91精品| 五月婷婷欧美视频| 日韩av电影免费观看高清完整版在线观看 | 成人网页在线观看| 国产经典欧美精品| 国产一区二区三区黄视频| 久久精品国产一区二区三区免费看| 五月激情六月综合| 另类专区欧美蜜桃臀第一页| 久久超碰97人人做人人爱| 国产一区中文字幕| 国产成人午夜精品5599| 国产成人av电影| 在线观看av一区二区| 欧美日韩一区二区三区在线 | 日韩电影在线一区二区| 男男gaygay亚洲| 国产精品自拍av| 91小视频免费看| 欧美一级在线视频| 国产喂奶挤奶一区二区三区| 综合久久久久久久| 免费在线观看一区| 成人美女视频在线观看| 欧美在线免费视屏| 日韩一级欧美一级| 国产精品成人一区二区三区夜夜夜| 亚洲第一综合色| 国产成人综合在线播放| 欧美日韩一区二区三区四区五区| 欧美电视剧在线观看完整版| 亚洲欧美在线视频| 久久成人麻豆午夜电影| 欧美一区二区三区在线视频| 亚洲国产精品成人久久综合一区| 亚洲国产精品一区二区www | 欧美精品第1页| 久久婷婷国产综合精品青草| 一区二区三区在线视频观看58| 裸体在线国模精品偷拍| 一本色道**综合亚洲精品蜜桃冫 | 国产成人午夜片在线观看高清观看| 色综合中文综合网| 精品sm捆绑视频| 亚洲综合小说图片| 国产精品资源网| 欧美另类高清zo欧美| 久久精品日产第一区二区三区高清版| 亚洲国产日韩精品| 99re这里只有精品首页| 精品久久久久久无| 日韩专区中文字幕一区二区| 日本韩国欧美一区二区三区| 国产欧美一区二区精品秋霞影院| 日韩电影在线免费看| 欧洲精品在线观看| 欧美国产精品一区| 毛片基地黄久久久久久天堂| 欧美日韩五月天| 亚洲影视在线播放| 91麻豆精品一区二区三区| 国产欧美精品在线观看| 国产精品99久久久久久久女警 | 91精品国产麻豆| 亚洲一二三区在线观看| 在线观看亚洲一区| 亚洲免费观看在线观看| 91丨九色丨蝌蚪丨老版| 亚洲人成亚洲人成在线观看图片 | 成人小视频免费在线观看| 久久男人中文字幕资源站| 久久99精品久久久久| 精品乱码亚洲一区二区不卡| 美国精品在线观看| 日韩欧美综合一区| 久久国产综合精品| 久久精品视频一区| 国产91露脸合集magnet| 欧美国产精品v| 91在线国内视频| 亚洲在线视频一区| 6080午夜不卡| 日本成人在线电影网| 91精品国产高清一区二区三区| 日韩电影一二三区| 久久综合九色综合欧美亚洲| 国产精品一区二区黑丝| 国产精品久久久久久久久动漫| 99久久国产综合精品女不卡| 亚洲18女电影在线观看| 欧美一区二区免费视频| 国产成人啪午夜精品网站男同| 国产精品高潮呻吟| 欧美中文字幕亚洲一区二区va在线| 亚瑟在线精品视频| 久久色.com| 久久久久国产精品麻豆ai换脸| 国产馆精品极品| 亚洲午夜一区二区三区| 日韩欧美二区三区| 91在线porny国产在线看| 天堂成人免费av电影一区| 国产欧美1区2区3区| 在线亚洲欧美专区二区| 激情五月婷婷综合| 中文字幕视频一区二区三区久| 欧美日韩国产一级片| 国产麻豆精品95视频| 亚洲一区二区三区四区在线免费观看| 日韩欧美一级在线播放| 91亚洲男人天堂| 精品一区二区三区香蕉蜜桃| 亚洲人成在线播放网站岛国| 精品久久人人做人人爱| 日本高清视频一区二区| 国产精品99久久久久久似苏梦涵| 亚洲成人激情社区| 国产精品短视频| 26uuu精品一区二区| 欧美日韩一区二区在线观看| 99久久久免费精品国产一区二区| 激情综合五月婷婷| 午夜精品久久久久久久久久久| 亚洲欧美日韩综合aⅴ视频| 亚洲一区在线看| 国产农村妇女毛片精品久久麻豆 | 久久精品男人的天堂| 亚洲一区二区三区免费视频| 91在线观看下载| 久久免费看少妇高潮| 国产成人自拍网| 国产欧美日韩另类视频免费观看 | 久久久www成人免费毛片麻豆| 成人精品一区二区三区中文字幕| 美女视频第一区二区三区免费观看网站| 国产欧美精品一区| 久久久久久电影| 精品国产91乱码一区二区三区| 6080日韩午夜伦伦午夜伦| 色综合久久88色综合天天免费| 成人在线视频一区二区| 国产高清一区日本| 精品一区二区三区的国产在线播放| 亚洲一区二区在线播放相泽 | 麻豆精品久久精品色综合| 五月婷婷激情综合| 亚洲va欧美va人人爽午夜| 五月婷婷综合在线| 蜜臂av日日欢夜夜爽一区| 久久国产精品一区二区| 男女激情视频一区| 久热成人在线视频| 国内精品写真在线观看| 国产精品资源网站| www.欧美色图| 欧洲亚洲国产日韩| 6080国产精品一区二区| 日韩精品一区二区三区视频播放 | 亚洲三级视频在线观看| 中文字幕av资源一区| 亚洲日本青草视频在线怡红院 | 亚洲精品国产无天堂网2021| 夜夜嗨av一区二区三区| 丝袜美腿亚洲一区二区图片| 麻豆久久久久久| 大陆成人av片| 欧美色视频在线| 精品欧美久久久| 亚洲丝袜精品丝袜在线| 亚洲综合激情另类小说区| 久久精品二区亚洲w码| 国产成人精品三级| 欧美视频在线一区二区三区| 欧美一区二区免费观在线| 中文字幕巨乱亚洲| 亚洲国产成人va在线观看天堂| 奇米影视一区二区三区| 豆国产96在线|亚洲| 欧美三级视频在线| 久久久99久久| 亚洲资源中文字幕| 国产乱色国产精品免费视频| 97久久超碰国产精品| 欧美电视剧免费观看| 亚洲精品va在线观看| 国产在线视频一区二区| 在线观看一区二区精品视频| 精品国产一二三| 亚洲国产精品久久人人爱蜜臀| 国产不卡视频一区| 6080午夜不卡| 一区二区三区精品视频| 成人午夜在线播放| 日韩精品一区二区三区视频播放 |