Pull, Push и ветки
Ежедневная работа с Git-источником: как забрать изменения из репозитория, отправить свои, посмотреть diff перед операцией, создать и переключить ветку, что такое Hard Pull.
При активном Git-источнике в футере плагина есть три кнопки: Refresh проверяет состояние репозитория, Pull забирает изменения, Push отправляет ваши. Синяя точка на кнопке значит, что есть что забрать или отправить. Плагин сам проверяет репозиторий раз в минуту и при возвращении в окно Figma.
Pull: забрать изменения
- Нажмите Pull в футере. Откроется окно Pull Changes.
- Слева список изменённых файлов с фильтрами по типу изменения: новые, изменённые, удалённые. Справа сравнение версии в плагине и версии в репозитории.
- Нажмите Pull, чтобы применить изменения. Cancel закрывает окно без изменений.

Окно Pull Changes: один входящий файл, сравнение Local и Remote, последний коммит с автором и временем.
В заголовке окна показано число входящих файлов и счётчики добавленных, изменённых и удалённых. Внизу последний коммит ветки: сокращённый хеш, сообщение, автор и время.
Если изменений нет, окно сообщит Repository is up to date, а кнопка Pull будет неактивна.
Во время Pull под кнопкой в футере идёт индикатор прогресса, а в дереве файлов временно пусто: плагин загружает файлы заново.

Pull в процессе: дерево файлов пустое, в футере индикатор загрузки.
По завершении плагин покажет сообщение вида Synced: 12 updated, 1 deleted. Если часть файлов не удалось загрузить, сообщение попросит повторить Pull.
Hard Pull
Оранжевый чип Hard pull required в заголовке окна значит, что с момента последнего Pull изменился репозиторий, ветка или папки Tokens Path и Data Path. В этом случае обычный Pull сначала очистит локальные данные плагина, а затем загрузит всё заново, чтобы не смешивать файлы разных веток. Кнопка Hard Pull делает то же самое принудительно: используйте её, если локальное состояние выглядит сломанным и нужно взять всё из репозитория заново.
Hard Pull не трогает репозиторий, он перезаписывает только данные плагина.
Push: отправить изменения
- Измените токены в плагине и сохраните файл.
- Нажмите Push в футере. Откроется окно Push Changes со списком файлов и сравнением: слева версия в репозитории, справа ваша.

Окно Push Changes: изменённый файл и построчное сравнение.
- Введите сообщение коммита и нажмите Push.

Заполненное сообщение коммита. Для GitLab доступна ссылка Show format guide с примерами формата Conventional Commits.
Плагин создаст один коммит со всеми изменёнными файлами: токенами, данными Database, маппингами и изображениями. По завершении появится сообщение Pushed: N updates, M deletes и уведомление Push completed внутри плагина.
Чип Scope changed в заголовке предупреждает, что репозиторий, ветка или папки изменились после последнего Pull: убедитесь, что отправляете изменения туда, куда собирались.
Если изменений нет, плагин сообщит No changes to push. Если в подключении не указан Tokens Path, файлы токенов в Push не попадут, плагин отдельно предупредит об этом.
Сравнение файлов
В обоих окнах работает одно и то же сравнение:
- Стрелки над сравнением и клавиши F7 и Shift+F7 переходят между изменениями.
- Панель Files можно свернуть, чтобы сравнение заняло всю ширину.
- Метка ≈ у файла значит, что содержимое отличается только переводами строк или пробелами; такой файл всё равно попадёт в коммит.
- Очень большие файлы, больше 1 МБ или 10 000 строк, не показываются построчно, чтобы плагин не тормозил. Изменение при этом учитывается, а посмотреть его можно в репозитории.
- Изображения и другие бинарные файлы показываются как строка в списке без сравнения.
Ветки
Ветка выбирается в меню, которое открывается по чипу источника в футере. В нём список веток репозитория, поиск и кнопка обновления списка. Выбор ветки переключает плагин на неё; после этого нажмите Pull, чтобы загрузить её содержимое. Плагин напомнит: Branch changed. Run Pull to sync.

После переключения в футере показана новая ветка docs-demo.
Создать ветку
- Create Branch создаёт ветку от текущей.
- Create Branch From... создаёт ветку от любой другой: выберите исходную в списке Source Branch.

Окно Create Branch From: выбор исходной ветки и имя новой.

Имя новой ветки docs-demo. Плагин проверяет имя по правилам Git: без пробелов, без «..», не заканчивается на «.lock».
После Create Branch ветка появляется в репозитории, плагин переключается на неё и предлагает сделать Pull.
Ветки нужны, чтобы готовить изменения токенов отдельно от основной ветки и отдавать их на ревью обычным pull request в GitHub или GitLab. Плагин работает с любой веткой одинаково.
Если что-то не работает
| Что случилось | Что делать |
|---|---|
| Кнопки Pull и Push неактивны | Активен не Git-источник. Выберите подключение в меню футера |
| Remote repo is too large и кнопки заблокированы | Провайдер вернул неполный список файлов. Сузьте Tokens Path и Data Path в подключении |
| Push rejected | Сервер не принял сообщение коммита. Для GitLab откройте Show format guide и приведите сообщение к нужному формату |
| Protected Branch | В эту ветку нельзя писать напрямую. Создайте другую ветку и работайте в ней |
| После Pull переменные в Figma не обновились | Pull меняет только файлы в плагине. Нажмите Export variables & styles, чтобы обновить переменные, или включите автоэкспорт после Pull в config.json |
| Pull останавливается с сообщением про SXL Bridge | В подключении включён Local Storage, а Bridge не запущен. Запустите Bridge и повторите |
| Нужно понять, что произошло | Вкладка Diagnostics → команда log |