首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >IntelliJ:如何创建用于备份的本地Java项目副本?

IntelliJ:如何创建用于备份的本地Java项目副本?
EN

Stack Overflow用户
提问于 2016-04-10 21:40:23
回答 2查看 1.3K关注 0票数 1

我是JavaFX 8和IntelliJ IDE的新手。我有一个JavaFX8项目可以工作,但不是我想要的那样。我想尝试另一种方法,但实质性的改变可能行不通。我不想泄露我工作过的代码。

为了保存我正在工作的代码,我创建了一个新的folders(.idea,项目,然后在本地复制工作项目的所有 out、src)和文件( .iml除外)到新项目中的适当文件夹中,其中包含新生成的..iml< code >E 211。

这似乎总是有效的,但这是正确的程序吗?

我不是一个开发团队的成员,我还没有学习过Git/GitHub。

请给我建议。谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-04-10 22:14:14

这是正确的程序吗?这可能不是大多数人会如何去实现你想要达到的目标,但这肯定是可行的。如果现在为了简单起见,我会复制整个目录结构,删除.idea和.iml文件,然后在这个干净的副本上在IntelliJ中创建一个新项目: IntelliJ将根据现有的源代码自动设置文件夹结构,而无需进行任何额外的手动设置。

如果您愿意尝试git路线,那么要实现您想要实现的基本目标并不是很复杂,我已经在下面编写了一个小的快速开始。IntelliJ为Git提供了非常好的支持,一旦创建了存储库,您就可以从IDE中完成所需的一切。我将假设您正在Windows上工作,尽管在其他平台上,这些步骤不应该太远。

安装Git

您可以从https://git-scm.com/download/win下载并安装Git,它将安装一个名为Git的命令shell。

项目的一次性设置

打开git,进入包含源代码的目录。Git Bash没有像Windows那样看到单独的驱动器,而是假设存在一个逻辑上的“根目录”,在这个目录下可以访问所有文件。您的C:驱动器将是/c。要移动,可以使用cd更改目录(使用/代替),使用ls列出文件,而不是使用dir

假设您的源代码在C:\projects\myproject中:

代码语言:javascript
运行
复制
cd /c/projects/myproject
git init

上面的第二行在该目录中创建了一个git存储库。这不影响您的代码,它只创建一个名为.git的文件夹,其中包含所有的簿记信息。

您不希望每个文件都处于版本控制之下--特别是不希望生成输出。您需要在项目目录中设置一个名为.gitignore的文件,它告诉git哪些文件和目录应该被忽略。作为起点,您可以复制https://github.com/github/gitignore/blob/master/Java.gitignore并将文件重命名为.gitignore

基本命令和提交初始版本

有少量基本命令:

代码语言:javascript
运行
复制
git status

运行git status将告诉您哪些文件已被修改,哪些文件不在版本控制之下,哪些文件已添加到下次提交的暂存区域。

代码语言:javascript
运行
复制
git add path/to/file

这将向等待提交的暂存区域添加一个文件。在一次性提交之前,可以将多个文件添加到暂存区域。

代码语言:javascript
运行
复制
git commit -m "description of your change"

这会将所有已分阶段的文件作为新版本提交,指定的提交消息。

如果进入项目目录,执行git status并检查列表,以确保在版本控制下没有什么不想要的,那么您可以执行git add .将所有内容添加到暂存区域,并将其提交到存储库。

在你完成任务后,你可以跑

代码语言:javascript
运行
复制
 git log

查看所有变化的历史。IntelliJ有一个视图,它将向您展示同样的事情。

创建实验分支

这就是git的亮点;如果您想尝试一些实验性的东西,您可以创建项目的一个分支,同时允许git保留原始版本。

代码语言:javascript
运行
复制
git checkout -b experiment1

将创建并切换到一个名为experiment1的分支。您可以在这个分支上删除、重命名、移动、重写和开发任何您喜欢的内容。您提交的更改将独立于您最初的工作版本。

您可以使用以下方法切换回原始版本(保留在该分支上提交的所有更改):

代码语言:javascript
运行
复制
git checkout master

其中,master只是运行git init时创建的默认分支的名称。实验版本仍然存在,可以使用git checkout experiment1或使用状态栏右下角的分支选择从IntelliJ切换到。

如果您决定您在experiment1中所做的更改将成为您的新“好”版本,您可以将它们合并回主分支并在那里重复循环。

票数 1
EN

Stack Overflow用户

发布于 2016-04-10 21:58:17

也许您应该学习如何使用像Git这样的版本控制系统,然后您可以创建一个项目存储库,并为您想要尝试的东西创建不同的分支。

将工作代码保存在主分支中将防止您丢失工作代码。此外,在使用vcs时,您可以始终恢复到已经工作的代码版本。

IntelliJ Idea完全支持使用所有不同类型的版本控制系统。

如果您不想学习任何形式的vcs,那么就没有其他方法来“备份”您的工作代码。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36535856

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档