Eclipse + EGit: projeto clone no espaço de trabalho

Estou um pouco confuso sobre como o EGit funciona.

Eu tenho um repository git existente no Github e quero cloná-lo no meu espaço de trabalho. Meu objective é ter o repository local armazenado diretamente dentro da pasta do meu espaço de trabalho, mas não consigo trabalhar com o EGit.

Quando eu quero clonar o repository do github com o EGit, eu tenho que escolher um diretório como destino. O diretório sugerido está no meu homedir (não no meu espaço de trabalho). Quando escolho esse diretório, posso ver o projeto no Eclipse, mas ele não está armazenado na minha pasta do espaço de trabalho. Em vez disso, ele é armazenado no meu diretório inicial.

Quando escolho um diretório diretamente dentro do meu espaço de trabalho, mais tarde, quando se trata de importar o projeto, ele diz que já existe um diretório com esse nome.

Eu não sei como resolver isso. Eu pensei que este seria um cenário comum. No passado, eu usei o hgEclipse (Mercurial) e ele estava funcionando exatamente do jeito que eu achava que deveria ser, então estou confuso. Talvez eu tenha entendido mal alguma coisa.

Provavelmente, é importante saber: no repository do github, não há arquivos .project ou .settings do eclipse. Eu tenho-os em meu .gitignore e assim no diálogo de importação eu tenho que escolher “Importar como Projeto Geral” e não “Importar Projetos Existentes”. Mas acho que isso não deveria importar?

Espero que alguém possa me ajudar ou me explicar por que o plug-in EGit não clona o repository diretamente no espaço de trabalho por padrão.

Minha Eclipseeversion é 3.6, eu instalei o EGit sobre o local marcado.

Como mencionado neste tutorial do EGit , o diretório de destino que você mencionou ao importar (clonar) um repository do Git é qualquer diretório que você queira, no qual o .git será criado:

Importar Repositório Git

Você não precisa selecionar o espaço de trabalho em si (pelo menos, deve selecionar o subdiretório workspace/myproject , para não tornar o espaço de trabalho todo do Eclipse um repository do Git.

E você pode selecionar qualquer outro diretório fora da área de trabalho: a área de trabalho do Eclipse deve conter apenas metadados sobre projetos e configurações do Eclipse.
Ao declarar um novo projeto, você poderá selecionar o diretório do projeto, tornando esse diretório o pai para .classpath e .project .
Seu espaço de trabalho listará esse novo projeto, mesmo que ele esteja fora do espaço de trabalho.

Para importar um projeto do GitHub, você deve usar o diálogo Importar repository do Git como novo projeto ( clique com o botão direito -> Importar -> Git -> Git Repository como novo projeto ). Dessa forma, você pode selecionar o destino do repository clone, incluindo o espaço de trabalho.

Não. Não há como fazer isso funcionar. Você não pode usar egit para fazer o checkout de um projeto git no espaço de trabalho e, se você fizer check-out em outro lugar e tentar copiá-lo no espaço de trabalho, perderá sua conexão com o repository remoto. Se você quiser que o VCS funcione, use o svn ou o mercurial.

Se você quiser editar as fonts no IDE e também quiser que as alterações sejam refletidas no repository Git, exclua o arquivo de origem original no projeto e vincule o arquivo de origem no repository git ao projeto. Dessa forma, você pode fazer alterações diretamente no repository do git e enviá-las quando necessário. Tenha cuidado para não excluir os arquivos ao excluir o projeto no IDE.

Etapas para ter o projeto git no espaço de trabalho (com egit):

  1. Na perspectiva do GIT, escolha “Clonar um repository Git e adicioná-lo a essa visão”
  2. Como destino, escolha a pasta dentro de uma área de trabalho (por exemplo, “… / workspace / myproject”)
  3. Espere até clonado
  4. Arquivo -> Novo -> Projeto
  5. Geral -> projeto
  6. Como um nome de tipo de nome de projeto de uma pasta no espaço de trabalho onde o projeto foi clonado (por exemplo “myproject”)

Na checkbox de diálogo “Configurar local de armazenamento local”, escolha … / workspace / projectname.

Então, na próxima checkbox de diálogo, obtemos o menu de seleção do assistente. Normalmente você deve selecionar “Importar projeto existente”. (Mas veja abaixo).

Finalmente, há o diálogo “Importar projetos”. Por vários motivos inexplicáveis, às vezes essa checkbox de diálogo está vazia e não permite que você termine. Nesse caso, você precisa cancelar e, em seguida, fora do Eclipse, excluir completamente o diretório de trabalho em que foi clonado e, em seguida, iniciar novamente.

Mas se houver o projeto lá, pressione finalizar. Se ele reclamar do projeto já existente, volte ao menu do assistente e altere-o para usar um assistente. Selecione um assistente Java e termine. Muitas vezes isso funcionará, mas somente se você tiver o menu “Importar projetos” para reconhecer o projeto em primeiro lugar.

Pode levar várias tentativas para que isso funcione! Mas uma vez configurado, funciona bem.

Então, em resumo: é possível fazer o EGit usar o local padrão do projeto para o clone do git, mas na minha experiência pode inexplicavelmente precisar de várias tentativas.