代码之家  ›  专栏  ›  技术社区  ›  Frosty840

修订控制中文件夹布局的最佳实践?

  •  1
  • Frosty840  · 技术社区  · 14 年前

    1 回复  |  直到 12 年前
        1
  •  14
  •   Dylan Beattie    12 年前

    我通常有

    Project Directory
      src - actual source
      doc - documentation
      lib - libraries referenced from source
      dep - installation files for dependencies that don't fit in lib
      db  - database installation script
    

    在与Visual Studio的合作中,我不确定在java世界中这是否同样有效。但我通常把东西放在src的不同项目文件夹中。对于每个源项目都有一个单独的测试项目。生成文件位于主项目目录中。我通常也会在那里放一个自述文件,说明如何设置项目,如果它需要的不仅仅是签出。

    编辑:这是项目的单个工作签出的结构。在你的版本控制系统中,每个分支/标签都会被复制(记住,在大多数SVN系统中,复制是便宜的)。上面的Subversion示例如下:

    /project
        /trunk
            /src
            /doc
            /...
        /branches
            /feature1
                /src
                /doc
                /...
            /feature2
                /src
                /doc
                /...
    
        3
  •  2
  •   matt b    16 年前

    为了进一步说明孟德尔-西本加的建议,我还将添加一个 web 目录(用于JSP文件、WEB-INF、WEB.xml等)。

    测试应该放在名为 test 那是主的兄弟 src 文件夹-这样,您的单元测试类可以与被测试的源代码具有相同的包名(以简化您想要测试受保护的方法或类的情况,例如。。。见 JUnit FAQ for this ,这个问题也在 Where should I put my test files? ).

    我自己并没有太多的用处,但是Maven项目也会创建一个 resources 非源代码的src文件夹旁边的文件夹,您希望将其与主源代码一起打包/部署,如属性文件、资源包等。您的里程数可能因此而异。

        4
  •  0
  •   ryan    16 年前

    WebAppName\
        \lib
        \src
        \tests
        etc...
    

    然后我会在我们的主干上创建一个名为WebAppNameProject的SVN文件夹。在此文件夹中,我将创建名为WebAppNameSource、Documentation等的文件夹。在WebAppNameSource文件夹中,我将放置Eclipse生成的项目源。因此,我将在SVN中拥有以下文件夹结构:

    \svn\trunk\WebAppNameProject
        \WebAppNameSource
            \lib
            \src
            \tests
            etc...
        \Documentation 
    

    希望这有帮助。