質問: EclipseでEgitを使い、Gitで共同作業をしようと考えております。 GitHubなどで他の人のgitをのぞくとsrcなどのディレクトリがトップに来ています。 しかし、いざ環境を作ってみるとプロジェクト名のフォルダが作業ディレクトリにできてしまいます。 ``` git ┣~~~~ ┗作業ディレクトリ ┣.git ┣[プロジェクト名] ┃┗src ┃ ┗~~~~ ┗.gitignore ``` これをリモートに上げるとリポジトリの中にプロジェクト名のフォルダができてしまいます。 これをたとえば ``` git ┣~~~~ ┗作業ディレクトリ ┣.git ┣src ┃┗~~~~ ┗.gitignore ``` にするなどをして、リポジトリのトップにファイルが展開されるように設定したいのですが、PCにアプリケーションを入れないで実現することはできないでしょうか? よろしくお願いします。
回答: Team > Share Project... のgitリポジトリ作成ウィザードで、 **Use or create repository in prent folder of project** にチェックを付け、次のダイアログでプロジェクトフォルダのルートで**Create Repository**を行えば可能ですね。 ただしこの作成方法は推奨されていません。 EGit User Guideによると、『リポジトリの中にプロジェクト名のフォルダができて』いる状態こそがEclipseプロジェクトの管理として正当であり、変更すべきではないということのようですね。 > > Don't create a Repository with an Eclipse project as root. > > Make sure to use the Git Sharing Wizard correctly. > > (中略) > > It is probably not a good idea to make a project the root folder of your Repository. > > The reason is that you will never be able to add another project to this Repository, as the .project file will occupy the root folder; you could still add projects as sub-folders, but this kind of project nesting is known to cause lots of problems all over the place. In order to add another project, you would have to move the project to a sub-folder in the Repository and add the second project as another sub-folder before you could commit this change. > > > じゃあなぜ『GitHubなどで他の人のgitをのぞくとsrcなどのディレクトリがトップに来てい』るのかというと、あれら(の大半)はEclipseプロジェクトとして管理しているのではなく、MavenプロジェクトやGradleプロジェクトとして管理されているものです。Eclipseを前提としているプロジェクトではありません。 (更に言うと、EGitを使って開発されているのは極少だと思います...これは想像ですが。)