我从两年前返回到Eclipse和Java项目。我以为我会给SmartGit一个尝试。我已经允许SmartGit查找以前在命令行上管理的git存储库。令我吃惊的发现这8个仓库时,我只期待4.例如,在镜像镜像在Eclipse项目的二进制文件中发现的Git存储库
.../bin
/COM /域/公用事业
SmartGit发现了一个存储库,并告诉我,所有.java文件丢失,并且所有.class文件都未被跟踪。这似乎很奇怪。我不记得在二进制端创建一个Git仓库。
什么更有意义是
../ src
/COM /域/公用事业
被列为“修改”的文件对应于什么,我记得我最近编辑。来源方似乎如预期的那样。
回到命令行并查看来自git log
的提交历史记录,我可以看到二进制日志与源日志完全相同,直到第二个日志。当然,在二进制文件中提交并在源代码中同时提交是不可能的。
我以前曾尝试在2012年10月使用EGit,但放弃了这一尝试。 EGit可能负责在二进制端创建这个奇怪的存储库(但所有.java文件都丢失,.class文件未被跟踪?)
如果这个镜像提交日志不是Git的正常输出,我将删除在二进制端的整个.git文件夹。我想在这里发帖,看看是否可以确认Git没有理由创建它。
我想我会告诉Eclipse停止复制.git目录。要通过'mv .git ../../../..'移动.git目录,然后'git add src/com/domain/package'似乎会导致文件被删除并添加文件。知道.git文件夹已被移动并不够智能。鉴于此,旧的'git checkout'可能最终会填充错误的地方。然而,我认为保持包级别的主要原因是包重用户可以从历史中受益。 (一个软件包重用户可能想要包历史记录,而不是我不相关的项目历史。) – H2ONaCl
您不应该移动.git目录。你应该在你的git项目中移动文件。只需创建一个src目录(是的,在您当前的src下),然后将根包移到子目录。然后将顶级src目录(包含.git)重命名为“myProject”。 –