git fetch不工作-缺少来自另一个分支的提交?

git fetch不工作-缺少来自另一个分支的提交?,git,netbeans,Git,Netbeans,我有两个存储库:一个配置了Netbeans的本地存储库和一个远程存储库 我在这两个数据库中都有相同的提交,但有一个例外:远程存储库有一个额外的、较新的提交 我想用Netbeans将此提交拉到我的本地存储库。 所以,我右键单击我的项目,Git->Remote->Pull,选择正确的分支,然后按Finish。Netbeans给出了一个错误: 缺少提交38b55ec9cbd31cddeec412fa9d66e2e979a3b4 我搜索了此提交,但在本地存储库或远程存储库中都找不到要提取的分支的提交。所

我有两个存储库:一个配置了Netbeans的本地存储库和一个远程存储库

我在这两个数据库中都有相同的提交,但有一个例外:远程存储库有一个额外的、较新的提交

我想用Netbeans将此提交拉到我的本地存储库。 所以,我右键单击我的项目,Git->Remote->Pull,选择正确的分支,然后按Finish。Netbeans给出了一个错误:

缺少提交38b55ec9cbd31cddeec412fa9d66e2e979a3b4

我搜索了此提交,但在本地存储库或远程存储库中都找不到要提取的分支的提交。所以,我在其他分支中搜索它,最后我在一个完全不同的分支中找到了它

我不是在拔那根树枝。为什么Git需要来自完全不同的分支的提交

我使用Netbeans维护本地存储库,因此在本地存储库中,我认为我无法访问命令行。我有没有办法强迫Git(Netbeans版本)进行拉取

编辑:同时,我安装了一个git客户端。当我执行:

git log --full-history
它不显示commit 38b55ec9cbd31cddeec412fa9d66e2e979a3b4。这就是我的本地存储库中显示的内容(只需进行一点编辑)-远程存储库有一个较新的提交,但也不是必需的提交:

C:\Projects\Project1\mavenized\Front>git log——完整历史记录提交 5cb2bc0ec4cc3666422a5ed0b314343cd8e96作者:#我的名字#日期:周五 2014年1月31日08:29:31+0200

Front - Live version: 30-JAN-14
Front - Live version: 21-JAN-14
提交6EB8A8B419CECE4065ECEAFE733F1718CB4EBEC作者:#我的名字#日期: 星期三2014年1月22日14:30:37+0200

Front - Live version: 30-JAN-14
Front - Live version: 21-JAN-14
提交fcba1824dc8ef2bcad98d63e00b1f1a6af2495dc作者:#我的名字#日期: 12月18日星期三16:58:52 2013+0200

Front - First Commit
如中所述,您的git repo需要完整的历史记录才能使任何远程(pull/fetch)命令正常工作

一个
git日志——完整的历史记录应该显示提交


最简单的解决方案是重新克隆repo并将其导入您的NetBeans工作区。

FYI git完全基于.git文件夹中的文件。任何独立的git客户端或git命令行程序都可以直接使用,只要您能找到netbeans的位置。它可能靠近源文件的根目录,可能是一个隐藏文件夹。我将尝试安装一个独立的客户端。是的,Netbeans将.git文件夹放在源文件夹的根目录中。希望命令行能帮助我更多地了解这个错误。这实际上是主要问题:它不会在本地或远程存储库中显示提交。只有当我切换到另一个不应该以任何方式干扰我现在工作的分支时,我才能看到提交。我用命令的输出更新了我的问题。@user1691018如果重新克隆远程repo,是否仍会看到相同的错误消息?是的,重新控制似乎可以解决问题。谢谢VonC!但我仍然想知道为什么会出现错误…@user1691018我同意。这个线程()提到了一个磁盘空间问题来解释损坏,但我怀疑你不是这样。不,磁盘空间不是问题。我来看看你提到的那条线。有此问题的分支仅使用cherry Pick进行维护,我知道这可能会导致问题,但我做了很多次,没有遇到错误。加上我想说的没有任何可疑的日志。