如何使git只提交跟踪文件
我刚开始使用git,它快把我逼疯了。如果我理解git的正确工作方式:如何使git只提交跟踪文件,git,svn,github,version-control,Git,Svn,Github,Version Control,我刚开始使用git,它快把我逼疯了。如果我理解git的正确工作方式: 即使跟踪了文件,也必须将其添加到暂存池中 在提交之前 只有临时池中的文件才会提交到本地存储库 当使用“git add”将非跟踪文件添加到临时池时,它将自动成为跟踪文件 当使用“git-rm”(或“git-rm--cached”(如果我不希望从FS中删除)删除跟踪文件时,会将删除“操作”插入临时池,该操作将在下一次“git-commit”时在本地存储库中实现 然而,如果我有100个经过修改的跟踪文件,那么在准备提交时单独添加它们
所以问题是,是否有一个git命令可以执行“svn commit”的功能,也就是说,只添加并提交所有被修改或删除的跟踪的文件,而不是将树中的每个单独文件添加到暂存池?
git add-u
应该只添加修改和删除的文件。值得一提的是,这样做更好(因为它完全准确)将索引/暂存区域视为“下一次提交时要放置的内容”。当您git add
或git rm
时,您正在更新索引,该索引仍然是“下一次提交时要放入的内容”。如果您在签出后没有更新它,它仍然充满了“下一次提交时要放什么”,只是其中的所有内容都与您刚签出的内容相同。只是为了让事情不那么混乱:在Git 1.xGit add-u
中,在本地目录及其子目录中添加修改和删除的跟踪文件。在Git 2.x中,相同的命令Git add-u
在整个树中添加修改和删除的跟踪文件,无论您在树中的哪个位置,而命令Git add-u.
在您所在的目录及其所有子目录中添加所有修改和删除的跟踪文件。