Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [ide-dev] Yet another article advising to leave Eclispe

Max,

>> - I just drop all my files in a single project tree. In eclipse,
>> you cannot do this, because git wants one project per git repository.
>> (and lots of other reasons)
>
> I agree/understand your other issues but the above is just not true.

you are right: it is possible to have multiple projects
within one git repository (I have done this many times too!).
Although, there are two problems:
  1. files that are not in one project cause problems when
     looking at differences (maybe this is fixed now, but some
     time ago I had huge problems with a big git repository
     where I opened only a small subtree as project)
  2. if the root directory contains files, which project do they
     belong to? A trick is to create a project for the root and
     exclude the directories that host other projects. But that is
     a non obvious workflow.

What I actually wanted to say was:

   It is not possible to have a project
   that contains multiple git repositories.

The project root directory must be within the git repository. Once it is
above (in a parent git repository), egit has problems
(or maybe I don't know how to set this up correctly)...

It seems that the git hierarchy is flattened in the "Repositories View"
and git decorators only appear in the navigator if the root of the project
is within a git repository.

It is, however possible to create a flat set of projects where each
project is representing each of the git repositories. But then the
structure in workspace does not reflect the structure in the file
system.

And this is really sad: when eclipse started, one of the missions
was to reflect the reality of the filesystem. I have been told, that
visual age, IBMs IDE that predates eclipse, was inspired by Smalltalk
and had a kind of database to manage the files. Eclipse was eager to
solve that problem by adding *all* files within the project root to
the project. Over time mechanisms had been added to filter out files
and subtrees and to add linked folders.

Today, eclipse suffers from all those problem that you have to play
all kinds of tricks to make eclipse reflect the physical layout of
your project on disk. A "project" has become much more than a
directory in the file system.

But the trend for many projects today is to rely on the directory
structure in the file system. Embedded and web projects deploy
and run the application on a remote machine and for many developers
command line tools are the way to interact with the remote machine.
Those remote systems simply don't care about .project files and
all the tricks they do. It is extremely confusing to flatten
the application structure for eclipse when to deal with a tree
on the command line.

I totally understand why many developers use editors like
emacs or sublime and deal with the directory structure as it is.

In some way, the rigid workspace concept of eclipse, which was
a good idea at some point, is limiting the adoption of eclipse....

Michael




Back to the top