如何在不妨碍我的团队的情况下重命名根项目文件夹?

时间:2015-11-20 20:48:29

标签: git git-branch git-merge git-commit pull-request

我们的存储库的根文件夹中有一个空格。
我想制作一个拉取请求,用下划线替换这个空格。

如你所知,git不存储目录;只有文件名。因此,此更改将影响我们的代码库中的每个源文件。

如何在为同事提供最少量问题的同时进行此更改?

我们所有的开发人员都分支了一个名为dev的分支,我的更改也需要在dev的子分支上进行。

这是我期望的目标和当前的限制。

目标:

  • 对其他开发者的最小障碍。 (我们有数百个活跃的 分支,其中一些是拉动请求)。

  • 保留历史记录。(理想情况下,我希望将此更改改为showup为 重命名或移动单个文件的历史记录。

  • 最小合并冲突(如果可能)

  • 避免无意的副作用(可能有我不知道的细节。我应该注意到我们在Windows和Linux上都有开发人员 - 尽管这不是一个案例敏感文件更改。)

限制:

  • 我无法直接更改devmaster分支。
  • 无法执行任何强制推送(因此我无法重写历史记录)。

1 个答案:

答案 0 :(得分:1)

您可以使用git mv命令重命名目录。这将按预期工作,并保留历史记录等。即使在合并重命名之前,此目录层次结构下的文件发生了其他更改,也不会导致任何问题。

首先,重命名目录:

git mv olddir newdir

然后使用git commit提交更改。