【发布时间】:2020-04-03 07:38:24
【问题描述】:
我有一个包含此类文件的存储库:文件夹 1、文件夹 2、文件 1、文件 2。我想将所有这些文件转移到这个 repo 中的一个新文件夹中,例如到客户端文件夹。如何执行此操作以保留此客户端文件夹的提交历史记录?然后我想添加一个文件夹,例如服务器,在客户端文件夹旁边。
【问题讨论】:
我有一个包含此类文件的存储库:文件夹 1、文件夹 2、文件 1、文件 2。我想将所有这些文件转移到这个 repo 中的一个新文件夹中,例如到客户端文件夹。如何执行此操作以保留此客户端文件夹的提交历史记录?然后我想添加一个文件夹,例如服务器,在客户端文件夹旁边。
【问题讨论】:
您需要使用git mv。
例如,如果您想将 file1 从 folder1 移动到 folder2,您需要导航到 folder1 并运行
git mv file1 ../folder2/file1
您可以对文件夹执行相同的操作。假设您想将 folder1 移动到 folder2 中,您需要导航到包含 folder1 的文件夹并运行
git mv folder1 folder2
您可以通过将文件的新名称作为第二个参数来使用相同的命令来重命名文件。
git mv file1 newFileName1
完成移动/重命名文件后,您只需提交文件/文件夹的移动/重命名,否则您将丢失历史记录。
【讨论】:
git mv 不是必需的。这是要走的路,因为这样更容易做到这一点。