还是个 GIT 的问题

2014 年 5 月 29 日
 yueyoum
本地修改的文件,没有commit,
如果执行了 git reset --hard HEAD

那些修改是不是不可能找回来呢?
4050 次点击
所在节点    git
26 条回复
acthtml
2014 年 5 月 29 日
有没有add 有的话 git reset,没的话没救。
yueyoum
2014 年 5 月 29 日
@acthtml

没有………………

跑到同事那儿去操作, 然后把人家一天的工作搞报废了…………………………
ijse
2014 年 5 月 29 日
如果文件没有tracked, 就没事。。
yueyoum
2014 年 5 月 29 日
@ijse

肯定是tracked了啊, 没tracked, git reset 根本不影响啊
jsonline
2014 年 5 月 29 日
没事别乱 hard
kneep
2014 年 5 月 29 日
应该没救了
ganxiyun
2014 年 5 月 29 日
有些ide有local history,不知道有没有用
yukirock
2014 年 5 月 29 日
強烈建議把 git 目錄放到 Dropbox 目錄下,雙保險。
NemoAlex
2014 年 5 月 29 日
你同事改了一天都没有 commit 一次也是厉害
jsonline
2014 年 5 月 29 日
@NemoAlex 同感。
ChiangDi
2014 年 5 月 29 日
这怪你同事,一天都没commit
rebornix
2014 年 5 月 29 日
不同意楼上,有时候一天工作可能只是一个文件或者一个很小的feature,反复雕磨,不commit很正常。
SoloCompany
2014 年 5 月 29 日
JetBrains 党路过,表示 Local History 非常有用
FatGhosta
2014 年 5 月 29 日
学会git stash
goofansu
2014 年 5 月 29 日
goofansu
2014 年 5 月 29 日
接15楼,我试了下,如果git add过,是可以找回的
exch4nge
2014 年 5 月 29 日
commit要勤快,git stash也可。

@rebornix GIT作为分布式的管理工具,我觉得可以修改一小部分就提交一次。到正式提交到服务器的时候,如果觉得commit太乱,可以先git rebase -i,整理一下commit,可以合并几个commit(同时可以改相关commit message),可以调整顺序,调整完顺序还可以只把前面几个有信心的commit提交到服务器上去。

只要commit了,就不怕丢了,可以checkout,如果这commit被删,也基本上用reflog都回滚操作。
peizh2006
2014 年 5 月 29 日
印象中add过就可以找回
skydiver
2014 年 5 月 29 日
只要add过都可以找回。
ensonmj
2014 年 5 月 29 日
vim的话也可以寄希望开了历史纪录

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/114917

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX