Почему Subclipse работает только в некоторых рабочих пространствах Ecliplse, а не в других?
Вопрос
Я использую Eclipse с Subclipse для разработки на Perl.Репозиторий Subversion настроен следующим образом:
- /репо /репо/dev/
- /repos/dev/crontabs
- /repos/dev/crontabs/script1
- /repos/dev/crontabs/script2
- /repos/dev/демоны
- /repos/dev/daemons/script3
- /repos/dev/daemons/script4
- /repos/dev/инструменты
- /repos/dev/tools/script5
- /repos/dev/tools/script6
В файловой системе я проверил все дерево /repos/dev локально на ~/dev и создал три рабочих пространства Eclipse, по одному в «~/dev/crontabs», «~/dev/daemons» и «~dev». /инструменты".
Здесь все становится странно.В рабочих пространствах демонов и инструментов SVN работает правильно.Я не вижу каталогов .svn и могу делать все, что связано с SVN (например,фиксация, обновление, очистка) в диалоговом окне TEAM.Однако SVN не работает в рабочей области «crontabs».Каталоги .svn видны, и ни одна из опций диалогового окна SVN недоступна.
Во всех каталогах я могу использовать инструменты SVN командной строки, и все работает нормально.
Вот еще некоторые подробности.
- Mac OS X 10.5.6
- Платформа Eclipse — Версия:3.4.2 - Идентификатор сборки:М20090211-1700
- Библиотека SVNKit 1.2.2.5405
- Клиентский адаптер SVNKit 1.5.6.1
- Подклип 1.4.8
- ЭПИК 0.5.46
Я попытался удалить файлы deameons .metadata и realted .profile, чтобы попытаться очистить их и запустить новое рабочее пространство, но это не сработало.
Кто-нибудь видел такое поведение раньше и/или знает способ заставить команды SVN работать во всех рабочих пространствах, а не только в некоторых из них?
ОБНОВЛЯТЬ:Я также должен упомянуть, что в каталоге /dev есть множество других ресурсов, для которых я не использую Eclipse.Итак, я использую инструмент SVN командной строки в сочетании с функциями SVN в Eclipse.Изначально все было проверено с помощью инструмента командной строки, а затем я просто использую Eclipse для коммитов.Что меня смущает, так это то, почему он работает в двух подкаталогах, но не в третьем, а командная строка работает на 100%.
Решение
При переключении рабочих пространств все настройки и т.д.из других рабочих областей игнорируются.
Вместо того, чтобы проверять весь ствол и создавать 3 рабочих пространства, которые совпадают со структурой вашего репозитория, создайте 3 рабочих пространства и извлекайте соответствующие части вашего репозитория как проекты для каждого рабочего пространства.
Другие советы
Когда вы создаете новый проект и импортируете в него файлы, Eclipse не предполагает, что проект находится под контролем версий.Вы должны явно сообщить об этом, используя команду проекта -> Поделиться проектом...диалог.
Как только вы выберете правильный каталог, Eclipse сообщит вам, что проект уже доступен в этом месте, но все равно активируйте для него команды SVN в Eclipse.
Я не уверен, что полностью соблюдаю все это.И плагин Subclipse не так отполирован, как плагин CVS.Но если вы копируете проект в рабочую область и он включает контекст Subversion (папки .svn), как заметил Бемос, это не имеет смысла для Subclipse.
Теоретически, когда вы используете Team/Share и получаете предупреждающее сообщение, вы можете дать добро, и он уничтожит существующие файлы .svn и создаст новые, подходящие.Если вам повезет, это даже сработает.То же самое касается и CVS, но, как я уже сказал, Subclipse может оказаться более серьезной проблемой.
Лучше всего проверять проекты в своих рабочих пространствах, используя перспективу Subversion Eclipse и опцию «Извлечь как проект Eclipse».
Если вы абсолютно уверены в необходимости создавать каталоги вашего проекта из командной строки, используйте Subversion. экспорт команда, а не команда оформления заказа.При экспорте каталоги «.svn» исключаются, поэтому Eclipse может делать свою работу без вмешательства.Однако вам придется выполнить команду Team/Share, чтобы подключить экспортированный проект к репозиторию Subversion.