Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将java文件推拉到git中_Java_Git_Github - Fatal编程技术网

如何将java文件推拉到git中

如何将java文件推拉到git中,java,git,github,Java,Git,Github,我正在从事一个java项目。目前,我将更改上载到服务器的方式是,我已在本地主机中运行项目,创建.class文件,并通过ftp将这些.class文件上载到服务器。但是,当我这样做的时候,上传文件需要花费很多时间,有时文件上传在完全上传之前就失败了 目前我开始使用git for php。如果我开始在git中存储java文件,那将是最好的方法。我需要只在git上存储类文件,还是需要在git中存储.java文件 当我从服务器调用git pull函数时,我需要在服务器上处理我的最新更改。请给我一个解决方案

我正在从事一个java项目。目前,我将更改上载到服务器的方式是,我已在本地主机中运行项目,创建
.class
文件,并通过ftp将这些
.class
文件上载到服务器。但是,当我这样做的时候,上传文件需要花费很多时间,有时文件上传在完全上传之前就失败了

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


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

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

但一般来说,git主要用于源代码。类文件通常是在.gitignore中看到的,因为远程编译并不可怕,尤其是在存储库中包含makefile时


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

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

但一般来说,git主要用于源代码。类文件通常是在.gitignore中看到的,因为远程编译并不可怕,尤其是在存储库中包含makefile时


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

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

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


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

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


Java
应该将允许重建整个构建的文件和资源(如
属性、xml、makefile
)添加到git中。另外,如果您不使用
Maven
(您应该!),您也应该将您使用的jar添加到git中。这样,每当一个新的开发人员检查您的项目时,他就拥有了编译和运行它的一切

避免(添加到.gitignore):


Java
应该将允许重建整个构建的文件和资源(如
属性、xml、makefile
)添加到git中。另外,如果您不使用
Maven
(您应该!),您也应该将您使用的jar添加到git中。这样,每当一个新的开发人员检查您的项目时,他就拥有了编译和运行它的一切

避免(添加到.gitignore):


构建控制文件,比如Ant
Build.xml
或Maven
pom.xml
也应该被检入;这提供了一种可重复、稳定的方法来从源代码重建编译后的代码。是的,这些文件对项目很重要,应该签入。构建控制文件,如Ant
Build.xml
或Maven
pom.xml
也应该签入;这提供了一种可重复、稳定的方法来从源代码中重建编译后的代码。是的,这些文件对项目很重要,应该签入。是的,这种方法对开发人员来说没问题,但我如何使用上述方法将更改拉到服务器?@Optimizer我不确定我是否理解您的要求。你能解释一下你想要实现什么吗?我希望我的开发者每天的工作需要上传到git的一个单独的分支。在问题解决后,我需要将这些更改合并到master,并需要将这些更改也拉到服务器。但是如果我将java文件存储在git中,那么调用git pull就没有用了。因为它在服务器上的java文件上生成。我的要求是,当我将所有需要上传到服务器的类文件拉入时,当我重新启动tomcat时,更改将影响服务器!凉的哦,你基本上是想存储java文件,当你拉的时候,你想自动编译并生成类文件?我不确定这是否可能,但您可以在服务器上拉后立即构建它。你最好的枪是一个git钩子。耶,我会试试的。感谢Sliviuyah,这种方式对开发人员来说是可以的,但是我如何才能使用上述方法将更改拉到服务器?@Optimizer我不确定我是否理解您想要什么。你能解释一下你想要实现什么吗?我希望我的开发者每天的工作需要上传到git的一个单独的分支。在问题解决后,我需要将这些更改合并到master,并需要将这些更改也拉到服务器。但是如果我将java文件存储在git中,那么调用git pull就没有用了。因为它在服务器上的java文件上生成。我的要求是,当我将所有需要上传到服务器的类文件拉入时,当我重新启动tomcat时,更改将影响服务器!凉的哦,你基本上想存储java文件和
- class files(target/build folder?)
- credentials
- log files(or any possible output)