3 回答

TA貢獻(xiàn)1844條經(jīng)驗(yàn) 獲得超8個(gè)贊
注意!如果您只想從先前的提交中刪除文件,并將其保存在磁盤上,請(qǐng)閱讀上面的juzzlin答案。
如果這是您的最后一次提交,并且您想從本地和遠(yuǎn)程存儲(chǔ)庫中完全刪除文件,則可以:
刪除文件 git rm <file>
提交帶有修改標(biāo)志: git commit --amend
amend標(biāo)志告訴git再次提交,但是將“ commit”(不是合并兩個(gè)分支的意思)與最后一次提交“合并”。
如注釋中所述,git rm此處使用就像使用rm命令本身!

TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超5個(gè)贊
現(xiàn)有的答案都在談?wù)搹纳弦淮翁峤恢袆h除不需要的文件。
如果要從舊提交(甚至推送)中刪除不需要的文件,并且不想創(chuàng)建新提交,則由于該操作,這是不必要的:
1。
查找您要文件符合的提交。
git checkout <commit_id> <path_to_file>
如果要?jiǎng)h除許多文件,可以多次執(zhí)行此操作。
2。
git commit -am "remove unwanted files"
3。
找到錯(cuò)誤添加了文件的提交的commit_id,在這里說“ 35c23c2”
git rebase 35c23c2~1 -i // notice: "~1" is necessary
該命令根據(jù)您的設(shè)置打開編輯器。默認(rèn)值是vim。
將最后一個(gè)提交(應(yīng)為“刪除不需要的文件”)移動(dòng)到錯(cuò)誤提交的下一行(在本例中為“ 35c23c2”),并將命令設(shè)置為fixup:
pick 35c23c2 the first commit
fixup 0d78b28 remove unwanted files
保存文件后應(yīng)該會(huì)很好。
完成 :
git push -f
如果不幸遇到?jīng)_突,則必須手動(dòng)解決。
- 3 回答
- 0 關(guān)注
- 1632 瀏覽
添加回答
舉報(bào)