本地存储库和索引有什么区别?

时间:2013-08-04 22:18:04

标签: git indexing commit repository

简单字中git addgit commit的区别是什么?

2 个答案:

答案 0 :(得分:3)

我认为你可以做的最好的比喻是索引是一个临时区域。 git add(或git add -p)更新索引中的内容,git commit将根据索引中的内容创建提交。

来自NDP Software的Andrew Peterson对命令如何影响他们Visual Git Cheatsheet中git的各个阶段进行了很好的描述。您可以与备忘单进行交互,并查看各种命令如何将更改从工作区移动到索引,再转移到本地仓库等。

答案 1 :(得分:2)

在“简单的字词”中,git add标记要由您的下一个git commit添加/更改/删除的文件,这会将这些更改最终确定为提交,并添加到您的回购历史记录中。

当文件被标记为要修改时,它们会被添加到索引文件/暂存区域,这就像拍摄工作副本状态的图片/快照一样。

git commit然后使这些更改成为“永久性”,尽管使用Git,提交并不像在更传统的源代码控制系统中那样“永久”。

这是简单,高级的答案。