我是版本控制的新手,我知道“提交”本质上是在更新您正在处理的新“当前”版本的同时创建备份。
我不明白的是,从实际角度来看,分期是为了什么。演出只是名存实亡还是有目的的?当您提交时,无论如何它都会提交所有内容,对吗?
编辑:我想我可能混淆了术语。 “暂存”文件与“跟踪”文件是否相同?
最佳答案
当您提交时,它只会提交索引中的更改(“暂存”文件)。这有很多用途,但最明显的是将您的工作更改分解为更小的独立部分。也许您在实现功能时修复了错误。您可以 git add
只添加该文件(或 git add -p
只添加文件的一部分!),然后在提交其他所有内容之前提交该错误修复。如果你正在使用 git commit -a
那么你只是在提交之前强制对所有内容进行 add
。如果您想利用暂存文件,请不要使用 -a
。
您还可以使用 --cached
将暂存文件视为中间工作副本以用于许多命令。例如,git diff --cached
将向您显示该阶段与 HEAD
有何不同,因此您可以看到您将要提交的内容,而无需混入其他工作更改。
关于git - 为什么我需要在 Git 中提交之前的阶段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4878358/