1

我正在做一个java项目。目前我如何将更改上传到服务器是我已经在我的本地主机中运行项目并创建.class文件并通过 ftp 将这些.class文件上传到服务器。但是当我这样做时,上传文件需要大量的瓷砖,有时文件上传在完全上传之前就失败了。

目前我开始使用 git for php。如果我开始将 java 文件存储在 git 中,这将是最好的方法。我需要将class文件仅存储在 git 上还是需要将.java文件存储在 git 中。

当我从服务器调用 git pull 函数时,我需要在服务器上处理我的最新更改。请给我一个解决方案。

4

3 回答 3

3

Git 是您项目的版本控制系统。编译项目时会生成 .class 文件。因此,理想情况下,您应该避免在 Git 上存储 .class 文件。

自动生成的文件(如日志)或系统生成的文件(如编译文件)应被忽略。您可以通过创建 .gitignore 文件来忽略这些文件。

于 2013-10-20T07:50:05.010 回答
2

.class 文件存储运行代码时 jvm 使用的 java 字节码。如果您希望能够在“git pull”之后远程运行您的代码,那么我建议您推送 .class 文件。否则你需要使用'javac'在远程机器上编译它们。

不过,作为一般规则,git 主要用于源代码。.class 文件是您通常会在 .gitignore 中看到的东西,因为远程编译并不可怕,尤其是当您在存储库中包含 makefile 时。

编辑:您可能希望避免提交 .class 文件的另一个原因是它们可能无法在不同版本的 jvm 上运行。在本地编译可确保生成的 .class 文件将在该机器版本的 jvm 上运行。

于 2013-10-20T07:49:45.037 回答
0

Javaproperties, xml, makefiles应该将允许重建整个构建的文件和资源添加到 git。另外,如果你不使用Maven(你应该!),你也应该将你使用的 jar 添加到 git 中。这样,每次新开发人员检查您的项目时,他都可以编译和运行它。

避免(添加到 .gitignore):

- class files(target/build folder?)
- credentials
- log files(or any possible output)
于 2013-10-20T08:36:50.660 回答