仅供参考,我对git很陌生,主要使用gitgui。更改git项目中的子文件夹名称,而不会丢失文件历史记录?
当我更改包含已经跟踪文件的已经跟踪的文件夹的名称时,git将文件夹中的所有文件视为新的未跟踪文件。我该如何让git明白我只更改了文件夹的名称,以便我不会“丢失”该文件夹中包含的文件的历史记录?
仅供参考,我对git很陌生,主要使用gitgui。更改git项目中的子文件夹名称,而不会丢失文件历史记录?
当我更改包含已经跟踪文件的已经跟踪的文件夹的名称时,git将文件夹中的所有文件视为新的未跟踪文件。我该如何让git明白我只更改了文件夹的名称,以便我不会“丢失”该文件夹中包含的文件的历史记录?
Git不关心你的文件或文件夹。我说过了。它跟踪你的内容。移动文件后,它将显示为git状态,即删除一组文件/文件夹以及创建文件/文件夹。提交后,Git会检测到它已经看到了这个确切的内容,并且不仅能够遵循“文件”和“文件夹”,而且即使您通过管理块的方式将代码从一个文件移动到另一个文件。
欢迎来到Git!
Git没有明确跟踪移动/重命名或副本。相反,它会在被要求时检测到它们。做这个动作,然后运行git diff -M
。
这里有一些例子表明,Git是一个真正的内容追踪:
因此,您不必明确告诉Git有关副本或移动:它会自动检测它们。