Na minha experiência, excluindo os casos limitados em que configurações puramente locais estão envolvidas, tudo deve estar no controle de origem. A lei do controle de origem é que tudo o que foi inserido deve funcionar por aqueles que o retiraram. Infelizmente, o eclipse costuma fazer com que coisas assim ocorram .classpath
:
<classpathentry kind="con"
path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.launching.macosx.MacOSXType/Java SE 7"/>
Portanto, no meu Mac isso funciona, e talvez alguém em um Mac tenha o mesmo JRE, mas não funcionará para mais ninguém.
Além disso, não há maneira fácil de contornar isso. O Eclipse sempre adicionará isso. EU QUERO ter o arquivo .classpath lá, porque existem alguns JARs de terceiros em nossa pasta lib onde nos preocupamos com o controle de versão, então nós os deixamos lá para que novos desenvolvedores não tenham que obtê-los . Estamos mudando para um sistema gerenciado, mas ainda temos dependências gerenciadas + não gerenciadas verificadas. Isso significa que todos os desenvolvedores precisam apenas garantir que dois diretórios estejam em seus.classpath
s. Mas é melhor do que ter que corrigir seu JRE toda vez que você puxa e ter uma mudança em seu .classpath toda vez que você efetua um commit.
Eclipse faz algumas outras coisas boas para você, no entanto. O arquivo .project geralmente será o mesmo nas instâncias, então inclua-o. Mas a melhor coisa sobre o controle de origem do eclipse são as configurações de Run Configurations. Na guia "Comum" na caixa de diálogo Configurações de execução, salve as configurações para que apareçam para seus colegas nas listas de favoritos para Depurar e Executar. Para mim, vários .launch
arquivos vão para o .settings
diretório, para que todos possamos usá-los.
Então eu digo: o .settings
diretório entra no controle de origem para configurações de inicialização (exceto * .prefs)
.classpath
fica fora
.project
entra