临下班前不小心把一天写的代码都删了

2017-04-06 20:55:38 +08:00
 sneezry
写了一天的代码没 git add ,创建一个新的分支后用 rm -rf *清掉了从 master 继承过来的全部代码,准备写入新的代码。当切回 master 时,发现整个世界都静止了(手动微笑

用了两个多小时把这一天写的代码又都回想起来并调试成功,终于长舒了一口气。

你说我手贱不贱?

贱。
11365 次点击
所在节点    程序员
95 条回复
crab
2017-04-06 21:56:07 +08:00
不能明天上班再写一次吗 = =!
ooxxcc
2017-04-06 21:56:17 +08:00
@NonClockworkChen 不是 CentOS ,我用的 archlinux ……只要文件系统是 btrfs 就行, snapper 自己可以装

替代方案没考虑过……新挂个分区 /镜像格式化成 btrfs/zfs 这类支持 snapshot 的文件系统就好……
jimmy66
2017-04-06 21:56:18 +08:00
心疼一波前辈😂
vingz
2017-04-06 21:56:32 +08:00
所以用 git rm 命令,不要用 rm -rf
或者用 git clean 命令,
git 库管理尽量使用 git 命令,可以在 reflog 里回退
cinhoo
2017-04-06 21:58:43 +08:00
@NonClockworkChen #17 btrfs 有提供工具( btrfs-convert )将 ext{3, 4}转换成 btrfs 。但 snapper 在 arch 上一直报权限错误,最后用的这个 https://github.com/jf647/btrfs-snap
ooxxcc
2017-04-06 22:12:42 +08:00
@cinhoo 我之前也用这个,后来觉得还是 snapper 灵活一点,供参考
权限错误怎么说……没碰到
qk3z
2017-04-06 22:24:44 +08:00
我已经干过两次了-_-
bp0
2017-04-06 22:26:25 +08:00
我也干过一次,充分说明设计才是最费时间的。码代码真的跟搬砖一样是体力活。
cinhoo
2017-04-06 22:28:36 +08:00
@ooxxcc #26 直接命令行创建 snapshot 是没问题的,但是 cron 创建的时候就报 No Permission 。要说是 cron 的问题好像也不是, snapper 和 btrfs-snap 的任务都是放在 cron.{hourly,day...}下的。后面直接用了 btrfs-snap ,不管了。
ydxred
2017-04-06 22:35:19 +08:00
有一个周六的晚上!我写了一个晚上的文章 要发博客的!因为电脑开的程序比较多...在四点的时候电脑死机了!只有重启电脑才能好!你们都知道 simplemde 吧!博客的富文本编辑器就会他!没有自动保存的功能那种!我当时的内心你们可能感受不到!写到半夜四点啊 没了!后来我学聪明了 在简书写 !写了在复制到我博客上 ....
yruite
2017-04-06 22:39:10 +08:00
我想起一个笑话:一个小蝌蚪拼命地游啊游,打败了所有的对手,到达终点时发现只是一张纸巾
v2xeuser
2017-04-06 22:45:43 +08:00
这种错误我应该不会再犯 理论上
taozhijiangscu
2017-04-06 22:46:35 +08:00
昨天干了类似的事情,原来打算删调试机上代码的,结果把开发机上的代码删掉了。

幸亏我机制将代码放到 Dropbox 可以触及的地方。

话说现在 Dropbox 改版了,误删的文件恢复起来更便捷了
morewe
2017-04-06 22:47:14 +08:00
刚工作的时候曾经把我和一个同事 2 , 3 天的代码给删了,囧。
Archangel_SDY
2017-04-06 22:47:21 +08:00
曾经花 2h 魔改一个程序,费好大劲把编译错误都修完,一运行,然后这货就把自己目录连同自己都删了...
singer
2017-04-06 23:07:13 +08:00
线上线下两台服务器配置一模一样,线上是绝对不用 rm -rf./*的,昨天早上上班,手滑点错 shell 界面了,连到线上去了。
而且手滑,/不知道为啥没输入,你猜怎么样吧。
快照回退到一星期前,线下版本部署上去。差点吓晕过去。。。。
bombless
2017-04-06 23:42:31 +08:00
……从来不需要 rm *,不过试过用 git clean 时犯类似的错(
HuangLibo
2017-04-07 00:01:16 +08:00
sudo rm -rf / 是一个更强大的命令, 楼主可以试试.
hanqian
2017-04-07 00:25:10 +08:00
花两个小时回忆起代码 不等于 创作代码只需要两小时,这应该不难理解吧,就像你写一篇文章要一个小时,复述这篇文章可能只要 5 分钟
bazingaterry
2017-04-07 00:26:42 +08:00
干过同样的傻事 +1

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

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

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

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

© 2021 V2EX