回答

收藏

如何在提交之前撤消“git add”?

技术问答 技术问答 440 人阅读 | 0 人回复 | 2023-09-12

我错误地使用以下命令将文件添加到 Git:
! y0 b1 I8 B& C2 |7 Q0 @git add myfile.txt我还没有跑git commit。有没有办法撤销这个,所以这些文件不会包含在提交中?
# N' k& [& c8 v, B: {8 f( m2 O                                                               
4 [$ w, J2 G# v, f    解决方案:                                                                ! T4 [; P0 c4 X
                                                                您可以git add提交前撤销
2 E- [  L. _: g9 ~git reset 在不改变任何其他内容的情况下,从当前索引(即将提交的列表)中删除。
9 [( x, V* b. K$ J/ n您可以使用
4 K4 v, w* y5 }9 n/ t% {git reset没有文件名来取消所有应有的变更。当有太多的文件需要在合理的时间内逐一列出时,就会派上用场。) R* g/ t1 ]8 v* w
旧版 Git 中,上述命令分别等同于git reset HEAD 和git reset HEAD,如果HEAD未定义(因为你还没有在仓库里提交任何东西)或者不清楚(因为你创建了一个叫 的分支HEAD,这是一件愚蠢的事情),它会失败,你不应该这样做)。然而,这是 Git 1.8.2 已经改变,所以现代版的 Git 您甚至可以在首次提交前使用上述命令:
1 S- `& o/ v/ f& M6 i“git reset(没有选项或参数)在你的历史记录中没有提交错误,但它现在为你提供了一个空索引(以匹配你甚至不存在的不存在的提交)。8 N, a  _- q" Q- j4 \& `
文档:git reset
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则