Git:重命名目录会从git中删除所有文件

时间:2017-11-22 01:06:46

标签: git

我将Git用于我的项目。在其中一个目录中有一些文件。现在我需要重命名目录。重命名目录后,git status将我的所有文件显示为已删除。所以这意味着我必须再次将这些文件作为新文件添加到Git中。但我不想再将所有这些文件添加到Git中。

有没有办法重命名目录,而不是在Git中添加整个目录和文件?

3 个答案:

答案 0 :(得分:0)

git很聪明。尝试git add旧的已删除文件夹以及新文件夹。然后运行git status,您将看到git理解的内容。它很可能会将您的更改显示为移动,而不是删除和更改。加法。

答案 1 :(得分:0)

git mv --dry-run oldDir newDir 

看起来不错?

git mv oldDir newDir

答案 2 :(得分:0)

只有在将文件添加到staging area(也称为index)时才会进行重命名检测。

因此,如果您重命名该文件夹,则会在git status

中看到
  • 旧文件夹的所有文件已删除
  • 新文件夹中的所有文件均为未跟踪

实际上你有两种方法可以重命名:

  • git add所有未跟踪的文件(git将使用其统计算法查找,大部分时间都是文件重命名)
  • 而不是自己重命名文件夹,使用git命令为您执行此操作(git mv)。这样,git会为你做add,我们一切都很好。