对于git重置,--hard、--merge和--keep之间有什么区别?
对于git重置,--hard、--merge和--keep之间有什么区别?,git,Git,git reset的主页上显示: --硬的 重置索引和工作树。对中的跟踪文件所做的任何更改 自以来的工作树被丢弃 --合并 重置索引并更新工作树中已删除的文件 和头不同,但保留 索引和工作树之间的不同(即,有变化的 (尚未添加)。如果文件在 如果索引有未老化的更改,则会中止重置。在里面 换句话说,merge有点像 git读取树-u-m, 但结转未合并的索引项 --保持 重置索引项并更新工作树中 和头部之间的差异。如果文件是不同的 在和之间,磁头有局部变化,复位被中止 我很难理解--hard、--
git reset
的主页上显示:
--硬的
重置索引和工作树。对中的跟踪文件所做的任何更改
自
以来的工作树被丢弃
--合并
重置索引并更新工作树中已删除的文件
和头
不同,但保留
索引和工作树之间的不同(即,有变化的
(尚未添加)。如果文件在
如果索引有未老化的更改,则会中止重置。在里面
换句话说,merge有点像
git读取树-u-m
,
但结转未合并的索引项
--保持
重置索引项并更新工作树中
和头部之间的差异。如果文件是不同的
在
和之间,磁头
有局部变化,复位被中止
我很难理解--hard、--merge和--keep之间的区别,可能是因为缺乏对所涉及的不同类型的更改的理解
你能用更简单明了的方式重新表述和解释它们的意思吗
谢谢。--hard:这基本上会将您带到您提到的提交,并且自本地提交后所做的任何更改都会被删除
有关--keep和--merge之间的区别,请参见: