我们通常将Eclipse用于特定的Java项目,但最近我将项目导入NetBeans以使用其对话框构建功能。
由于我可能会回到这里,我想将NetBeans项目文件存储到版本控制中。但是,我不想提交“我的”与“项目”的文件,即我自己设置的文件会与其他用户的文件冲突。
NetBeans在顶级项目区域中创建了以下结构:
nbbuild
nb-build.xml
nbproject
<various files>
configs
private
显然nbbuild
是构建输出,因此不会进入。nb-build.xml
文件似乎很可能,大多数nbproject
也是如此。但是,nbproject/private
表明它是“我的”。偷看“configs”,我不清楚这是我的还是项目......
任何人都有一些指导方针吗?
答案 0 :(得分:54)
NetBeans knowledge base article on project files & version control讨论了NetBeans项目文件,并提供了关于哪些文件是项目特定的松散建议(即可以通过版本控制共享),以及哪些是特定于用户的。
以下是版本控制部分:
如果项目已从版本控制系统中签出,则
build
(或nbbuild
),dist
(或nbdist
)和{{1}不应该将文件夹签入该版本控制系统。如果项目在CVS,Subversion或Mercurial版本控制系统下,则在导入项目时会为这些目录创建或更新相应的“忽略”文件。
虽然应忽略
nbproject/private
,但应将nbproject/private
检入版本控制系统。nbproject
包含项目元数据,使其他用户无需先导入项目即可在NetBeans中打开项目。
答案 1 :(得分:19)
事实证明,Thomas和&amp; Petercardona在某种程度上是正确的。 NetBeans建议您仅导入源代码和/或文档。哦和 nbproject 文件夹,但不是* nbproject / private **文件夹。
来自NetBeans Knowledge Base article on importing Eclipse projects:
版本控制注意事项
如果项目已退出a 版本控制系统,构建(或 nbbuild),dist(或nbdist)和 不应将 nbproject / private 文件夹签入该版本控件 系统
如果项目属于CVS, Subversion或Mercurial版本 控制系统,适当的 创建或更新“忽略”文件 对于项目中的这些目录 是进口的。
虽然 nbproject / private 应该是 忽略,应检查 nbproject 进入版本控制系统。 nbproject 包含允许其他用户打开的项目元数据 NetBeans中的项目,而不必 首先导入项目。
答案 2 :(得分:2)
无。
只应将源代码文件,构建脚本和未自动生成的文档(例如,JavaDoc和Doxygen等工具的输出)检入存储库。不应签入项目文件,二进制文件和生成的文档等内容。
原因是双重的。首先,您不希望用自己的内容覆盖其他开发人员的项目设置。其次,其他开发人员可能没有使用与您相同的IDE(甚至根本不使用IDE),因此不要给他们提供超出他们构建(项目或其相关文档)或运行项目所需的任何内容。
答案 3 :(得分:2)
使用Netbeans 6.8测试时,只有project.xml
,configurations.xml
和主要的makefile('nbproject'
目录的父目录中的可自定义的文件,具有前/后目标定义)必须通过存储库分发。所有其他文件将由Netbeans(Makefile-impl.ml
,Makefile-variables.ml
,所有Makefile-$CONF
,Package-$CONF.bash
自动(重新)生成。显然,“私人”目录也应该被忽略。
答案 4 :(得分:0)
您也可以检查
https://github.com/github/gitignore/blob/master/Global/NetBeans.gitignore
此开源项目包含
有用的.gitignore
模板的集合