我知道为什么不将Eclipse/IDE特定的文件提交到像Git这样的VCS(我实际上正在使用它).这是我使用Maven并让它为您生成这些文件并且不受版本控制的原因之一.
但我想知道,如果在.gitignore中忽略这些文件,它本身受VCS/Git的控制:
.classpath
.project
.settings/
target/
Run Code Online (Sandbox Code Playgroud)
这个可以吗?
什么是优点和缺点,因为.gitignore文件本身变成了特定于IDE的文件,因为忽略的文件是IDE特有的?有什么最好的做法吗?
更准确地说,我正在建立一个使用Spring进行依赖注入的Maven项目.因为我希望Maven将Spring Project性质添加到我的Eclipse项目文件中,所以我把它放到了maven-eclipse-plugin我的部分pom.xml:
<additionalProjectnatures>
<projectnature>org.springframework.ide.eclipse.core.springnature</projectnature>
</additionalProjectnatures>
Run Code Online (Sandbox Code Playgroud)
我无法在Spring网站上找到有关此Maven设置的任何官方文档.大多数其他网站,例如像这个或这个SO答案,建议将其放入配置部分:
<additionalBuildcommands>
<buildCommand>
<name>org.springframework.ide.eclipse.core.springbuilder</name>
</buildCommand>
</additionalBuildcommands>
Run Code Online (Sandbox Code Playgroud)
查看Eclipse,我看到此构建器也已配置.这个建筑师究竟做了什么?
"如何使用Jsch复制文件?" 问题是第一个到位的.由于使用Jsch很复杂且容易出错并且工作水平很低,因此您需要编写多行来编写简单的scp工作.
那么,如何在Java中使用尽可能少的代码行实现scp(甚至是sftp)并且不违反DRY原则?