Java 如何将源代码版本控制与web服务器集成?

Java 如何将源代码版本控制与web服务器集成?,java,svn,github,version-control,webserver,Java,Svn,Github,Version Control,Webserver,我了解源代码版本控制的概念,以及它如何应用于像Windows应用程序这样的自包含项目。但是对于web开发,大多数文件都存储在web服务器上。这已经成为开发中的一个难题,许多人只是复制和重命名文件,然后将文件推到生产环境中,这又是一个混乱 我需要一些源代码版本控制,这是相对不太难学习,必须是基于GUI的或有一个GUI作为一个选项。使用此命令行的人对命令行知之甚少或一无所知 如何将源代码版本控制与web服务器文件集成?有什么软件可用于这样的工作?是否可以让源代码版本控制软件同时管理生产和开发web服

我了解源代码版本控制的概念,以及它如何应用于像Windows应用程序这样的自包含项目。但是对于web开发,大多数文件都存储在web服务器上。这已经成为开发中的一个难题,许多人只是复制和重命名文件,然后将文件推到生产环境中,这又是一个混乱

我需要一些源代码版本控制,这是相对不太难学习,必须是基于GUI的或有一个GUI作为一个选项。使用此命令行的人对命令行知之甚少或一无所知

如何将源代码版本控制与web服务器文件集成?有什么软件可用于这样的工作?是否可以让源代码版本控制软件同时管理生产和开发web服务器,或者我可能只为每个web服务器安装两个独立的源代码版本控制,并手动推送更改

web服务器基于Windows,也使用Tomcat for Java/JSP


任何帮助都将不胜感激。谢谢。

我想你还不清楚版本控制的概念。版本控制是关于管理代码的。它是关于将代码放入远程服务器(可能位于中心位置)并使用客户端工具访问它。通过这种方式,许多人可以处理代码的不同部分,然后将他们的工作推送到版本控制服务器。这与项目的类型无关。 项目可以是windows应用程序、web服务器应用程序或任何应用程序。 在使用版本控制时,定期或在需要时从版本控制服务器生成代码并将其部署到web服务器,这意味着您正在部署已生成的代码(web应用程序的.war)

首先将war部署到开发服务器,然后将同一war部署到生产服务器


您可以将SVN服务器用作版本控制服务器,将Ortoise SVN用作客户端

您必须将两个不同但相互作用的东西分开考虑-版本控制和部署工具:

  • 风险投资与任何随时间变化的项目有关,你希望控制这些项目
  • 部署只需在正确的时间将正确的对象交付到正确的位置,并将“一套东西”转换为产品
部署本身不是问题(几乎任何作业都可以自动化),在具有中央阶段(较少使用PROD)服务器的多开发环境(2+)中,主要问题是开发人员之间的通信和操作的同步问题,即工作流和管理:

想象一下,2个(或更多)开发人员正在执行不同的不相关任务,他们希望在公共暂存服务器上测试自己(并且只测试自己)的最新更改(因为他们没有可用的本地环境)。若1-st在服务器上部署“一些WIP”,他不希望自己的测试被中断,也不希望通过部署第三方更改来毒害代码。他们必须沟通和协调行动,不能在提交后挂钩中愚蠢地“复制到…”

是否可以让源代码版本控制软件同时管理生产和开发web服务器


对。但VCS并不是按照常识“管理”web服务器,而是“沟通”或“考虑”

这是一篇非常有用的文章。非常感谢。Git和Github在搜索结果中出现很多。是否可以使用Git/Github进行web开发?这些文件必须是本地的和私有的——这是免费的还是只适用于付费Git/GitHub版本?如果没有,我没有问题继续与SVN服务器和乌龟SVN。我只是想看看有什么选择。谢谢。Github只对开源项目免费。有一些类似于工作的系统可以在专用服务器上运行,但是设置和管理它们是非常重要的。您可能可以使用一个简单的Subversion服务器和类似于TortoiseSVN的客户端来完成您需要做的事情。我会推荐Git和GitHub,但正如您所说,您的用户对命令行的掌握不强,我认为现在使用SVN会更好。Git比SVN复杂得多。你们两位@Yogidlip和bta都提供了很好的信息。我将继续使用SVN和陆龟。再次感谢您的帮助。@user3621633-SVN在某些情况下可能是一个大错误。如果您可以自由选择VCS,我建议Mercurial(作为GUI的陆龟)+BitBucket