我有一个问题,当重命名一个包,然后把它推到git远程回购。我使用Intellij > Refactor > rename来重命名包,在本地Git状态下显示为重命名文件,但在github中,当引发拉请求时,它显示的是已删除的旧包和添加的新包。
如何解决这一问题,并告诉git将其视为重命名?
示例: com.test.examplePackage ===> renamed to com.test.examplepackage (这个包中有将近500个文件)
现在github显示
com/test/examplePackage/Xyz.java -- deleted
com/test/examplepackage/Xyz.java -- added而不是com/test/examplePackage/Xyz.java ===> renamed to com/test/examplepackage/Xyz.java
发布于 2022-09-01 20:50:46
类似的问题已经在这里得到了回答:How to make git mark a deleted and a new file as a file move?
简而言之,如果内容被修改到特定的treshold之外,Git将考虑删除文件/目录。出于这个原因,您可能希望单独提交只用于重命名,而单独用于更改内部的文件内容。
在这种情况下,另一个可能相关的因素是,当使用squash合并时,您的单独提交会扩展为一个,这可能解释本地和github中的不同行为,在回购中,提交压缩可能默认打开。
https://stackoverflow.com/questions/73574578
复制相似问题