近一个月来,我一直在尝试在我的个人项目中使用 Git。
我对基本命令集有很好的理解,虽然它的用户体验不是很好,但我仍然发现自己喜欢 Git 胜过我过去使用过的其他 VCS。
但是,我仍然认为自己没有“理解”的一个概念是索引的真正目的。我有这种感觉,我没有利用它打算赋予的一些好处。
设置暂存区的目的是什么?来自 SVN 领域,我习惯于将我的工作副本视为我的暂存区,并从中获取我的提交快照。
所以,我的问题是:
这种额外的间接级别为您带来了什么? Index 如何改进或改变了您的正常工作流程?您能否提供任何场景,在这些场景中,使用索引可以让您做一些没有它就很难做的事情?
最佳答案
肯定有这样的时候,当我开始处理一项功能或错误修复时,然后注意到一个快速的拼写错误或其他一些小的(可能是单行的)问题需要修复。我不必放弃我所有的工作,甚至使用 git stash
,我可以通过索引提交那个只是那个微小的变化;我所有的其他工作仍然存在,但现在提交更加具体:它只显示那个小修复,而不是埋没在许多其他行的更改中。它是为了更清晰的历史记录而设计的,这使得搜索日志以查找更改变得容易,因为它们没有与其他提交混合在一起。
如果发生(复杂的、大的) merge 冲突,能够将我所做的每个更改添加到索引中也很好,这样我就知道我已经修复了哪些冲突以及哪些冲突需要处理。
关于git - Git 的索引概念如何改进或改变您的工作流程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2293634/