GitBorGitBor

Сайдбар веток и тегов

Checkout, merge, отслеживание remote, а также Pin / Solo / Hide и заметки к веткам

Левый сайдбар показывает локальные и remote-ветки, теги, stash и сабмодули активного репозитория. Список фильтруется полем поиска сверху.

Контекстное меню ветки

Правый клик по ветке (или hover-действия) позволяют:

ДействиеПримечания
CheckoutПереключает ветку. Если есть незакоммиченные изменения, диалог checkout спросит, что с ними делать.
Merge into currentОткрывает диалог merge.
Track…Только для remote-веток — создаёт локальную tracking-ветку и переключается на неё. Двойной клик по remote-ветке делает то же.
Rename… / Delete…Только локальные ветки. Удаление спросит подтверждение и может также удалить на remote.
New Branch / New Tag from hereСоздаёт ссылку на вершину ветки.
Copy NameКопирует полное имя ветки.

У тегов есть Checkout и Delete; у remotes — Fetch, Rename, Delete, Copy Name и Copy URL; у stash — Show Changes, Apply, Apply and drop и Drop. Сабмодули можно Init и Update из их секции.

Переключение с незакоммиченными изменениями

При checkout ветки с незакоммиченными изменениями GitBor спросит, как с ними поступить:

ВариантЧто происходит
Leave my changesПереключиться без stash. Git откажет, если файлы были бы перезаписаны.
Stash and restoreСпрятать изменения, переключиться, затем вернуть их на новой ветке.
Discard local changesHard-reset отслеживаемых файлов к HEAD перед переключением. Отменить нельзя.

Hover-действия для графа

При наведении на строку ветки справа появляются иконки. Они меняют только то, как ветка отображается — Git и история репозитория не трогаются.

ДействиеЧто делает
PinДержит ветку вверху списка. Удобно для develop, release/* или текущей фичи.
SoloВременно рисует граф так, будто существует только эта ветка.
HideУбирает коммиты, которые есть только в этой ветке. Коммит, общий с другой нескрытой веткой, остаётся видимым.
NoteОткрывает заметку к ветке (см. ниже).

Pin / Solo / Hide запоминаются по репозиторию и переживают перезапуски и переключение вкладок. Когда фильтр активен, баннер над графом показывает, что отфильтровано (например, «Graph filtered by branch 'feature' — 42 of 900 commits»), с кнопкой в один клик Show all / Unhide all. Если фильтр не оставляет ничего для показа, GitBor покажет пустое состояние с кнопкой сброса всех фильтров.

Заметки к веткам

Заметка — это свободное текстовое поле, привязанное к ветке:

  • Сохраняется по паре репозиторий + ветка — то же имя ветки в другом репозитории имеет свою заметку.
  • Поддерживается Markdown, пустое значение удаляет заметку.
  • Когда заметка есть, у иконки Note появляется точка; при наведении заметка показывается тултипом.
  • Заметки никогда не покидают вашу машину — хранятся в локальных настройках GitBor, не в Git.

Solo и Hide вместе

Solo и Hide комбинируются: Solo ограничивает граф одной веткой, затем Hide вычитает из неё скрытые ветки. Граф пересчитывается локально — переключение никогда не вызывает Git.

Авто-закрытие устаревшего diff

После операций, которые могут изменить то, на что указывает открытый diff (commit, merge, pull, stash, reset, checkout, rebase, cherry-pick, revert), GitBor автоматически закрывает панель diff, которая иначе показала бы отсутствующий файл или устаревшее содержимое. Граф и список изменений обновляются, и следующий клик показывает актуальный diff.