最近犯了一個之前的錯誤,stash 之后的內容沒有應用到代碼上就手欠直接給刪除了。后來發現 git fsck 可以恢復數據,終於得救。
首先,執行:
git fsck --lost-found
執行完之后會得到很多 id ,其中會標明哪個是 commit
Checking object directories: 100% (256/256), done.
Checking objects: 100% (64354/64354), done.
dangling blob eb0a5cabe0d2030d22c011ffd96584a8b9d46ef5
dangling blob f70d5ccb0439260ea17892401cb22e54f456bf04
dangling blob 5e13c8974187cdf3d3bd171c38bcb7ed88ce9672
dangling blob a1140825d9cd0ebd157098b8d4f8685383d66a59
dangling blob 841a404f69eba49fb48b5d5ef1864681b9221ca4
dangling blob 36222c728e3596e57e7837bb46361b436ef7dd90
dangling blob 492320b8281788ea90a4154b92e1adeb8cba9fbd
dangling blob 81279c8f3fd9b95edae9bfb16c2655236880d679
dangling blob 0b2e7c8280893cd0f461d59b4e2787fca00215fa
dangling blob 2c32a4721204375f08699df533e25df087ba5614
dangling blob f934a008b42005ff416099ddf4619b25f3019195
dangling blob c938a8d3a8de7b2b91cebff691a0c7b07c83e1d3
dangling tree b43eb805a4f9e525118c10f3c8dc58ddf35be8db
dangling blob ff3ec88e19a4a202d1f8d4e987e2052375500ad7
dangling blob c03f7c6eea43833c92a27f605ce564f90fe6c491
dangling commit a3aed9355e4efbf5a149a8e53a672c47625d1932
dangling blob 4e410cea8127c6b84b58e4f67bcc3a9b3f410f74
可以通過 git show 來查看是否是自己想要的代碼,排列順序是最新的在最上面。
git show + id
找到想要的代碼 id 后,執行 git merge 來恢復代碼
git merge + id
作者:Howie126313
鏈接:https://www.jianshu.com/p/4cd5983586b2
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。