Что означают значки стрелок в Subclipse?

110

Что означают значки на следующем снимке экрана? Иконки взяты из Subclipse, плагина SVN для Eclipse.

исходящий

Я не спрашиваю о значках базовых файлов, я их знаю (файл HTML и исходный файл Java). Я спрашиваю о темно-серых стрелках, указывающих вправо, которые помечены как «исходящие». Что это значит? Исходящий из IDE в репо или исходящий из репо в IDE? Почему внутри стрелок стоит минус? Иногда вместо этого я вижу знак плюса; в других случаях просто пустые стрелки. Какая разница?

Также есть синие стрелки, указывающие влево, и двуглавые красные стрелки; что это значит? А как насчет случаев, когда они содержат другие символы, например -и +?

Примечание: этот вопрос отредактирован довольно радикально. Обычно я бы не стал так сильно меняться, но это было почти неактивным и было обманом. В исходном вопросе был задан «глоссарий значков», который объяснил бы все или большинство значков Subclipse, аналогичный этому для Eclipse . Я все еще хотел бы узнать об одном из них, но, похоже, его просто нет.

Попс
источник
2
Оказывается, значки, о которых я спрашиваю, более правильно известны как декораторы значков.
Pops
1
@ Тим Стоун дал отличный ответ ниже. Вы также можете найти очень полезную Subclipse ключ значок здесь . Я использую это все время.
hotshot309 02
знак минус означает удаление файла, знак плюс означает добавление нового файла. Сами Eclipse, по-видимому, называет эти маленькие дополнительные значки «украшениями»: help.eclipse.org/juno/index.jsp?topic=/org.eclipse.jdt.doc.user/ ... Тот факт, что не все значки задокументированы рассматривается в отчете об ошибке: bugs.eclipse.org/bugs/show_bug.cgi?id=348154
Stijn de Witt

Ответы:

373

При работе с репозиторием Subversion удаленные изменения (те, что в репозитории) являются входящими изменениями (удаленные → локальные), а локальные изменения - исходящие (локальные → удаленные).

В представлениях, сравнивающих локальные и удаленные копии, входящие изменения обозначаются синей стрелкой влево, а исходящие изменения - серой стрелкой вправо. Эти стрелки могут быть украшены для обозначения более конкретных операций.

С другой стороны, представление Package Explorer показывает состояние файла с помощью другого набора значков, представляющих его локальное состояние. Эти значки встречаются чаще всего, поэтому начнем с них:

Игнорируемый файл- Файл игнорируется системой контроля версий. Вы можете контролировать, какие ресурсы будут игнорироваться, перейдя в Window → Preferences → Team → Ignored Resources .
Неверсированный файл- Файл не находится под контролем версий. Обычно это новые файлы, которые вы еще не зафиксировали в репозитории.
Новый файл- Версионный файл, который необходимо добавить в удаленный репозиторий. Обычно это файлы, которые вы переименовали или переместили в другой каталог.
Удаленный файл- Удаленная папка. Это папки, которые вы удалили локально, еще не зафиксировав изменения в репозитории. Обратите внимание, что файлы обычно удаляются из представления, когда они удаляются локально, поэтому они обычно не отображаются с этим значком.
Синхронизированный файл- Файл без локальных изменений.
Местные изменения- Файл с локальными незафиксированными изменениями.
Заблокированный файл- Азаблокированный файл.
Требуется блокировка- Файл, для редактирования которого требуется блокировка. Обычно это файлы, которые нелегко объединить (например, двоичные файлы), но они могут иметь много редакторов. Файл нуждается в блокировке, когда его svn:needs-lockсвойство установлено, и Subversion попытается сделать эти файлы доступными только для чтения в файловой системе, чтобы обеспечить правильное снятие блокировки.
Конфликтный файл- Конфликтующий файл. Обычно это файлы, в которых был конфликт фиксации / обновления, который вы отметили для разрешения позже.
Файл с конфликтом деревьев- Файл с конфликтом деревьев. Обычно это файлы с локальными изменениями, но с тех пор они были перемещены, удалены или переименованы в репозитории с момента последнего обновления локальной копии.
Внешний файл- Файл, внешний по отношению к проекту. Связанные внешние файлы не могут быть сохранены в репозитории. - Файл, который был
Переключаемый файл Переключаемый файл 2переключился . Это файлы, которые принадлежат другой рабочей копии, чем их локальный родительский каталог.

В представлении синхронизации (например, через синхронизацию с репозиторием или фиксацию ), как описано ранее, есть значки, указывающие, в каком направлении происходит изменение, а также дополнительная информация об этом изменении. Они описаны ниже:

Исходящие
Зафиксировать изменения - файл, содержимое которого было изменено и будет зафиксировано в репозитории.
Зафиксировать добавление- Файл, который будет недавно добавлен в репозиторий. Это может совпадать с удалением файла в случаях, когда файл перемещается или переименовывается.
Зафиксировать удаление- Файл, который будет удален из репозитория. Это может совпадать с добавлением файла в случаях, когда файл перемещается или переименовывается.
Изменение собственности- Файл с изменениями свойств в диалоговом окне «Фиксация». На вкладке «Синхронизация» изменения свойств в настоящее время отражаются как обычное изменение файла ( Зафиксировать изменения).

Входящий
Удаленные изменения - файл с изменениями содержимого, зафиксированными в репозитории, который будет применен к локальной копии.
Вытяните сложение- Новый файл, который будет добавлен в локальную копию из репозитория. Как и добавление исходящего файла, это может быть результатом перемещения или переименования.
Вытяжное удаление- Файл, который будет удален из локальной копии, так как он был удален из репозитория. Как и удаление исходящего файла, это может быть результатом перемещения или переименования.

Конфликт
Противоречивые версии - файл, который был независимо изменен как в локальной копии, так и в репозитории, что привело к необходимости разрешения конфликта. Для исправления этого условия необходимо открыть окно просмотра конфликтов или принудительно перезаписать изменения локально или удаленно.
Конфликт дерева синхронизации- Файл с конфликтом деревьев . Это может произойти, когда есть новые изменения в файле на одном конце (локальном или удаленном), а файл перемещается, удаляется или переименовывается на другом.

Наконец, параметр « Синхронизировать с репозиторием» открывает вкладку «Синхронизация» ( Вкладка "Синхронизировать") со следующими кнопками:

Синхронизировать источник- Синхронизирует локальную копию с текущим выбранным репозиторием при нажатии. Выбор из раскрывающегося списка позволяет переключаться между различными базами удаленного кода.
Показать входящие- Показывает только входящие изменения (удаленные → локальные).
Показать исходящие- Показывает только исходящие изменения (локальные → удаленные).
Показать входящие и исходящие- Показывает как входящие, так и исходящие изменения (удаленные ↔ локальные).
Показать конфликты- Показывает противоречивые изменения.
Обновить входящие- Обновляет все локальные ресурсы с входящими изменениями после запроса.
Зафиксировать исходящий- Открывает диалог фиксации для фиксации всех исходящих изменений.
Показать наборы изменений- Разбивает списки изменений по ревизиям.

Есть несколько других видов, которые не были рассмотрены, с дополнительными значками, но, надеюсь, это будет хорошим началом. Дайте мне знать, если чего-то важного не хватает или если какое-либо из этих описаний отличается от вашего реального опыта.

Тим Стоун
источник
11
Вау, не думаю, что я мог бы попросить лучшего ответа. Спасибо!
Pops
Еще один значок: stackoverflow.com/questions/1428498/…
появляется
Ха, эту последнюю ссылку даже обманули: stackoverflow.com/questions/2017183/…
Pops
Спасибо за этот чрезвычайно полезный ответ. Могу я попросить вас также включить значки, которые появляются в представлении «Синхронизация»?
urig 03
6
Наконец-то был найден Розеттский камень для иероглифов субклипсов!
remi