使用 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 存储库的问题的主要内容,如果未能解决你的问题,请参考以下文章