卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

git刪除本地倉庫文件 git如何恢復(fù)本地刪除的文件夾?

git如何恢復(fù)本地刪除的文件夾?git checkout . #本地所有修改的。沒有的提交的,都返回到原來的狀態(tài)git stash #把所有沒有提交的修改暫存到stash里面??捎胓it stash

git如何恢復(fù)本地刪除的文件夾?

git checkout . #本地所有修改的。沒有的提交的,都返回到原來的狀態(tài)git stash #把所有沒有提交的修改暫存到stash里面??捎胓it stash pop回復(fù)。git reset --hard HASH #返回到某個節(jié)點,不保留修改。git reset --soft HASH #返回到某個節(jié)點。保留修改

如何在git中刪除指定的文件和目錄?

拉取遠程的Repo到本地(如果已經(jīng)在本地,可以略過)

$ git clone xxxxxx

在本地倉庫刪除文件

$ git rm 我的文件

在本地倉庫刪除文件夾

$ git rm -r 我的文件夾/

此處-r表示遞歸所有子目錄,如果你要刪除的,是空的文件夾,此處可以不用帶上-r。

提交代碼

$ git commit -m"我的修改"

推送到遠程倉庫(比如GitHub)

$ git push origin xxxxxx

又不小心把.git文件夾也刪掉了,還能找回嗎?

如果只有本地一份repo,復(fù)制為新文件夾,刪除.git后重新init,這個比較easy。話說你反正沒公開,歷史丟掉也不是很有所謂。

如果有多人協(xié)作和遠程bare repo,那么這種事最好不要干了。

一定要刪歷史記錄的話,filter-branch也行,不過我也只有笨的辦法:git status羅列下已刪除的文件列表,全部填到 filter-branch 命令行的 rm 部分里面就是。期待有人答一份。當(dāng)然聰明的辦法的思路是有的:借助bash編程把已刪除文件名自動羅列到命令行里。不過暫時沒條件就答不出了。

附:

可以羅列出已刪除的文件,這些就是你想要清理掉的。

方法可以是這樣:

初步確認。不過備份好點。

再補充下:

filter-branch里面使用 git rm --ignore-unmatch 可以避免過多警告。

--prune-empty可以在一個提交的所有文件都被清空之后摘除這個提交。

同樣的,git rm a b c d/e/f/g 可以刪掉這些不同位置的文件,git rm -rf a b c d可以文件、文件夾都刪掉。

所以無論你的問題是什么,只有一件事要做,提供一個文件名列表出來,送給git filter-branch ..."git rm ..." 語句去做。