使用 EGit 添加现有 git 存储库的问题

Posted

技术标签:

【中文标题】使用 EGit 添加现有 git 存储库的问题【英文标题】:Issue with adding an existing git repository using EGit 【发布时间】:2021-07-11 17:27:30 【问题描述】:

在版本控制方面,我是初学者。我已经克隆了一个存储库并开始对其进行处理,也可以在 Eclipse 上使用 EGit 进行版本控制,因为它更容易。

所以我的问题是当我尝试将现有的本地 git 存储库(Git 存储库 -> 将现有的本地存储库添加到此视图)添加到 eclipse 时,它​​说找不到存储库(下面的屏幕截图)。我认为原因是他没有在项目目录中找到 .git 文件夹,因为不知何故 .git 文件夹消失了,然后我就遇到了这个问题。也许你们中的一些人会说我只需要再次克隆项目并复制 .git 文件夹并将其放在现有项目中,但问题是远程项目在我第一次克隆后收到了许多提交,这会影响我的本地项目? 谢谢 :D

click here to display the image

【问题讨论】:

【参考方案1】:

.git 文件夹说明

如果没有.git 文件夹,您就没有真正的 git 存储库! 该文件夹包含所有存储库数据。

因此,您的“存储库”目前只是一个普通的文件结构,并且丢失了所有 git 信息 - 它只是最后一个工作副本。

通缉

据我了解,您希望将更改应用到存储库(可能稍后创建一个 PR 到源/远程...)但是您完全丢失了 git 数据并且您想要修复此问题。

建议

也许你可以关注

    将远程存储库克隆到您计算机上的另一个新位置 签出您之前进行更改的同一分支 搜索您开始未提交更改的确切提交 ID (重要的是要与之前完全签出相同的提交,这样以后就不会出现合并问题) 执行“git checkout $commitNumber” 现在从这一点创建您自己的分支(此时我们处于与您开始 以前的本地更改 - 意味着相同的基础) 递归地从旧位置复制文件(包含您的更改) 进入新位置 - 但确保相对路径匹配!(因此 GIT 会将文件更改识别为差异...) 打开您的 Eclipse IDE 尝试将新位置添加为内部的现有本地存储库 Eclipse(现在可以使用) 打开“Git Staging”视图现在您应该看到您自己的分支的增量,这意味着您的更改。 将您的更改添加到索引并将它们提交到您的分支 将您的分支合并到想要的目标主/主分支中

恕我直言,这应该可以解决您的问题。

【讨论】:

我认为这应该可行,在此之前,我不明白第六步?将旧的复制到新位置是什么意思?新位置包含与旧位置相同的 java 文件名和配置文件。 @Oncobe :我更新了文本,因此第 6 步更容易理解 - 这只是意味着您将以前的文件更改复制到新的 repo(在文件系统上)。

以上是关于使用 EGit 添加现有 git 存储库的问题的主要内容,如果未能解决你的问题,请参考以下文章

Eclipse EGit 在 Pulls 后更改文件夹名称

用于推送现有项目的Egit插件配置

将 Mercurial 存储库移动到现有 git 存储库的子目录中

Eclipse,Git 拉到现有存储库,新项目在哪里

如何使用 EGit 克隆创建 Eclipse 项目

Egit:右键单击不显示 GIT 命令