如何在不妨碍我的团队的情况下重命名根项目文件夹?
How do I rename a root project folder without hindering my team?
我们存储库的根文件夹中有一个 space。
我想提出一个拉取请求,将 space 替换为下划线。
如您所知,git不存储目录;只有文件名。因此,此更改将影响我们代码库中的每个源文件。
我怎样才能做出改变,同时给我的同事带来最少的问题?
我们所有的开发人员都从一个名为 dev
的分支分支出来,我的更改也需要在 dev
.
的子分支上进行
这是我的预期目标和当前限制。
目标:
对其他开发者的阻碍最小。 (我们有数百个活跃的
分支,其中一些是拉取请求)。
保留历史记录。(理想情况下,我希望此更改显示为
重命名,或移动单个文件的历史记录)。
最小合并冲突(如果可能)
避免意外的副作用(可能有一些我不知道的细节。我应该注意到我们在这两个方面都有开发人员windows和 linux- 虽然这不是区分大小写的文件更改。)
限制:
- 我无权直接更改
dev
或 master
分支。
- 无法执行任何强制推送(因此我将无法重写历史记录)。
您可以使用 git mv
命令重命名目录。这将按预期工作,并保留历史等。即使在合并重命名之前此目录层次结构下的文件发生其他更改,也不应引起任何问题。
首先,重命名目录:
git mv olddir newdir
然后使用 git commit
提交更改。
我们存储库的根文件夹中有一个 space。
我想提出一个拉取请求,将 space 替换为下划线。
如您所知,git不存储目录;只有文件名。因此,此更改将影响我们代码库中的每个源文件。
我怎样才能做出改变,同时给我的同事带来最少的问题?
我们所有的开发人员都从一个名为 dev
的分支分支出来,我的更改也需要在 dev
.
这是我的预期目标和当前限制。
目标:
对其他开发者的阻碍最小。 (我们有数百个活跃的 分支,其中一些是拉取请求)。
保留历史记录。(理想情况下,我希望此更改显示为 重命名,或移动单个文件的历史记录)。
最小合并冲突(如果可能)
避免意外的副作用(可能有一些我不知道的细节。我应该注意到我们在这两个方面都有开发人员windows和 linux- 虽然这不是区分大小写的文件更改。)
限制:
- 我无权直接更改
dev
或master
分支。 - 无法执行任何强制推送(因此我将无法重写历史记录)。
您可以使用 git mv
命令重命名目录。这将按预期工作,并保留历史等。即使在合并重命名之前此目录层次结构下的文件发生其他更改,也不应引起任何问题。
首先,重命名目录:
git mv olddir newdir
然后使用 git commit
提交更改。