Git将本地历史记录合并到远程存储库

Git将本地历史记录合并到远程存储库,git,merge,commit,Git,Merge,Commit,我已经重组了我的项目文件夹。我发现在重构远程存储库中的文件之前,我丢失了提交历史记录 我有本地重组之前的历史。 现在,克隆存储库的每个人在重构之前都没有提交历史记录。 我是否可以重建提交历史并将其合并到远程存储库 当我尝试此命令时: git log --follow pom.xml 我可以看到文件的完整历史记录,但当我不使用时--在重新构造提交时,跟踪日志停止。我希望它显示所有历史记录。有办法解决这个问题吗 最后我发现这只是Bitbucket和Eclipse的问题。 Bitbucket显示对存

我已经重组了我的项目文件夹。我发现在重构远程存储库中的文件之前,我丢失了提交历史记录

我有本地重组之前的历史。 现在,克隆存储库的每个人在重构之前都没有提交历史记录。 我是否可以重建提交历史并将其合并到远程存储库

当我尝试此命令时:

git log --follow pom.xml

我可以看到文件的完整历史记录,但当我不使用时--在重新构造提交时,跟踪日志停止。我希望它显示所有历史记录。有办法解决这个问题吗

最后我发现这只是Bitbucket和Eclipse的问题。 Bitbucket显示对存储库的所有提交,但不能使用命令--follow显示sinbgle文件日志。 Eclipse也存在同样的问题。
Intellij工作正常。

在Git中丢失历史记录的唯一方法是删除提交。这是因为提交就是历史。没有文件历史记录;只有提交

当您使用
git log--follow pom.xml
时,您是在告诉git合成一个文件历史记录,方法是在提交历史记录中漫游,并注意何时触摸到名为
pom.xml
的文件。
--follow
选项告诉Git,除了检查在该提交中是否更改了
pom.xml
,它还应该检查在该提交中是否重命名了它。如果是这样,Git将检查以前提交的旧名称(包括其完整目录路径)而不是新名称,这样Git就不再寻找
new/pom.xml
,而是现在寻找
old/pom.xml
或其他什么,并为该文件构建文件历史记录


如果您使用IDE,IDE必须执行与Git合成文件历史记录相同的操作,方法是选择更改该文件的提交,并在过程中检查重命名操作(如果这是您希望它执行的操作)。

您能更具体一点吗?“我知道我失去了历史”你在哪里看到的?“我有重组前的历史”又在哪里?当你在项目中移动一些目录时,没有理由丢失你的回购历史记录,所以你似乎遗漏了什么。对不起,我试图描述更具体的内容。当我选择一个文件并单击ShowHistory时,我会看到所选文件的完整提交历史记录。当我在同一个文件的bitbucket中执行相同的操作时,我只会看到从重组项目那天起的历史记录。