java - 在版本控制下的 Eclipse 项目中创建一个新的根目录

标签 java eclipse git ant

我正在为我的软件工程类(class)做一个小组项目,我的教授指出我在 Github 上设置的目录结构不正确。我现在想更正这个问题以避免被扣分,但我对使用 Git 还很陌生。基本上我们在 Github 上有如下结构。

src
--main
----java
------Source Files
--test
-----java
------Test Files
Various Ivy/Ant build files
.classpath
.gitignore
.git
.project
README.md

我需要创建一个名为 CodeComp 的新目录,它将包含上面的目录结构,但 README.md 除外,它应该与 CodeComp 目录处于同一级别。

由于我们的成绩取决于提交历史,因此需要保留这一点。有没有一种简单的方法可以做到这一点,还是我们最好只对最终项目成绩进行小额扣除?

更新: 以防将来其他人必须这样做:

  1. 转到包含项目的文件夹并创建新目录。
  2. 将所有需要的文件移到新目录中,除了 .* 文件。刷新 Eclipse。
  3. 无论 Eclipse 错误如何,提交目录更改并将其推送到存储库。
  4. 从存储库中手动删除 .classpath、.gitignore 和 .project 文件。
  5. 备份您的 .classpath 和 .gitignore 文件。删除存储库的本地副本并重新克隆它。
  6. 导入 Git 项目并选择将项目文件放在您新建的目录中。
  7. 将备份的 .classpath 和 .gitignore 复制到新的项目目录中。 push 改变。

最佳答案

理论上,您应该能够使用标准文件浏览器将除 .git 和自述文件之外的所有内容移动到新的子文件夹中,然后提交。

git 历史记录仍然存在,但它可能会将其视为两个单独的文件,一个已被删除,一个刚刚创建。根据我的经验,Git 并不喜欢移动文件。

在任何情况下,您的提交历史仍将在存储库中,它只是您移动文件时的 2 个独立部分。

但是,嘿......无论如何,展示这一举动可能是值得的。当我第一次学习版本控制时,我确信我正在四处移动文件。都是学习。

编辑:您可以通过在本地提交更改并在将其上游推送到 Github 之前检查历史记录来对此进行测试。

关于java - 在版本控制下的 Eclipse 项目中创建一个新的根目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34033083/

相关文章:

java - 重命名所有类中的 class 类型的局部变量

java - 在不是 Activity 的类中使用 Android 中的 TelephonyManager

git rebase -i origin master "fatal: Needed a single revision invalid upstream origin"

java - android xml中小写和大写 "view"有什么区别?

java - 通过单击 jRadiobutton 更改 jComboBox 中的项目

c++ - 用于从 Eclipse 的 .cproject 文件生成 makefile 的独立工具?

Git:在推送后恢复意外丢弃文件的 merge

git - merge 和推送到远程时,有什么方法可以忽略本地提交历史记录吗?

java - 了解链表队列的入队方法

java - 无法使用 Spring、Hibernate 和 c3p0 创建 dataSource bin