需要在SVN上托管的Java文件

时间:2010-09-13 17:46:17

标签: java svn netbeans

我将在SVN上托管一个java项目,该项目需要由其他开发人员下载,并且能够在本地计算机上编译/打包该项目。

我想知道哪些文件需要存储在SVN上,哪些文件可以省略。我知道Netbeans创建的文件可以省略,并且需要包含build.xml,因为它有代码将项目中使用的库打包到.jar文件中。

我假设需要将以下内容存储在SVN服务器上:

/lib
/src
build.xml
  • 是否有任何文件 需要添加nbproject文件夹吗?

  • 如果不是什么svn命令(IE svn-ignore)我需要运行吗? 忽略除那些之外的所有文件 在/ lib,/ src和build.xml文件中?

  • 我的文件结构应该是什么 svn看起来像?我应该保留 src目录中的源文件 svn或我应该命名该文件夹 开发商可以做的其他事情 然后“从中创建一个新项目 现有来源“?

2 个答案:

答案 0 :(得分:5)

您不应该在SVN上托管lib目录,可以使用IvyMaven作为依赖项管理器,它将从存储库下载所有依赖项。

关于netbeans文件,它取决于你的团队的工作方式,我会说你可以让他们在SVN上对其他使用netbeans的开发人员有用,不应该打扰开发人员使用另一个IDE。


对于svn:ignore部分,您必须在命令行中执行svn propset svn:ignore dirname .


一般文件结构是:

/svn
|-projectName/
 |-branches/
 |-tags/
 |-trunk/
  |-projectName/ (Sometimes this directory doesn't exists and its content is put right into trunk)
   |-pom.xml (Maven !)
   |-module1Name/
    |-src/
     |-main/
      |-java/
      |-resources/
     |-test/
      |-java/
      |-resources/
    |-pom.xml (Maven !)
   |-module2Name/
   |-module3Name/

资源:

关于同一主题:

答案 1 :(得分:0)

我决定采取另一条路线。虽然我已经阅读了关于使用Maven的原始帖子,但我们希望远离Maven,因为我们基本上只是为现有的库编写命令行界面。

我决定做我做的另一个原因是在添加我的svn期间:忽略了我意识到这里的一些开发人员将他们的netbeans项目设置保存在不同的目录中,这基本上没有任何好处,因为它不会是一个svn该目录的工作副本。

所以我所做的只是将/ src和/ lib目录添加到repo。

最终用户然后使用svn co svn+ssh://path/to/repo/trunk .签出回购,然后打开netbeans并选择“从现有来源创建项目”。此时,他们将进入并从/ lib目录添加库。

我已经投票给你答案,因为如果我使用Maven,那将是非常有帮助的。