git
› Pro Git
› Atlassian Git Tutorial
› Pro Git 简体中文翻译
› GitX
yueyoum
V2EX  ›  git

还是个 GIT 的问题

  •  
  •   yueyoum · May 29, 2014 · 4611 views
    This topic created in 4542 days ago, the information mentioned may be changed or developed.
    本地修改的文件,没有commit,
    如果执行了 git reset --hard HEAD

    那些修改是不是不可能找回来呢?
    26 replies  •  2014-05-30 11:37:57 +08:00
    acthtml
    acthtml
    May 29, 2014
    1
    有没有add 有的话 git reset,没的话没救。
    yueyoum
    yueyoum
    OP
    May 29, 2014
    2
    @acthtml

    没有………………

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

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

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

    只要commit了,就不怕丢了,可以checkout,如果这commit被删,也基本上用reflog都回滚操作。
    peizh2006
    peizh2006
    May 29, 2014
    18
    印象中add过就可以找回
    skydiver
    skydiver
    May 29, 2014
    19
    只要add过都可以找回。
    ensonmj
    ensonmj
    May 29, 2014 via iPad
    20
    vim的话也可以寄希望开了历史纪录
    itommy
    itommy
    May 29, 2014
    21
    嗯嗯 应该这样像 @exch4nge 说的方式,无妨频繁 commit,rebase 整理。
    cyr1l
    cyr1l
    May 30, 2014
    22
    JetBrains 的 local History 真的是非常好用, 还自带 diff.
    foru17
    foru17
    May 30, 2014
    23
    我现在是在dropbox下放开发代码,之前试过有一次没commit 误输入rm -rf 了,从DP找回。add过的话,可以试一下 git reflog
    mahone3297
    mahone3297
    May 30, 2014
    24
    add 过可以用git reflog查看历史
    没add过,算了吧。。。。
    dong3580
    dong3580
    May 30, 2014
    25
    @goofansu
    幸好我养成了每次必定add的习惯,
    srjzcar
    srjzcar
    May 30, 2014
    26
    个人开发不喜欢这么频繁的gc 团队就别省gc了~
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2748 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 82ms · UTC 00:30 · PVG 08:30 · LAX 16:30 · JFK 19:30
    ♥ Do have faith in what you're doing.