Skip to content

Instantly share code, notes, and snippets.

@SeLub
Created February 3, 2026 08:44
Show Gist options
  • Select an option

  • Save SeLub/7fd6d35407847657ceae267da5d0f078 to your computer and use it in GitHub Desktop.

Select an option

Save SeLub/7fd6d35407847657ceae267da5d0f078 to your computer and use it in GitHub Desktop.

Инструментарий эффективного разработчика: Starship + Git Stash

В современной разработке скорость переключения контекста и понимание текущего состояния проекта — критические навыки. Этот гайд поможет настроить терминал, который «говорит» с вами, и освоить профессиональную работу с временным хранилищем кода.


Часть 1: Starship — терминал с нулевой когнитивной нагрузкой

Starship — это минималистичный и быстрый prompt-интерфейс, написанный на Rust. Он убирает необходимость постоянно вводить git status или node -v.

1. Установка и активация

# Установка бинарного файла
curl -sS https://starship.rs/install.sh | sh

# Добавление в автозапуск Bash
echo 'eval "$(starship init bash)"' >> ~/.bashrc
source ~/.bashrc

2. Установка Nerd Font (иконки)

Чтобы вместо квадратиков видеть иконки веток и языков программирования, установите специальный шрифт через терминал:

mkdir -p ~/.local/share/fonts
cd ~/.local/share/fonts && curl -fLO https://github.com/ryanoasis/nerd-fonts/releases/latest/download/0xProto.zip
unzip 0xProto.zip && rm 0xProto.zip
fc-cache -fv

Настройка VSCode: Нажмите Ctrl + ,, найдите Terminal › Integrated: Font Family и впишите: '0xProto Nerd Font Mono'.

3. Чтение индикаторов

Starship визуализирует контекст в реальном времени:

  •  develop — текущая ветка Git.
  • [$] — в стеке git stash есть сохраненный код (забытая «заначка»).
  • ! или + — наличие измененных или подготовленных к коммиту файлов.
  • via  v22.12.0 — активная версия Node.js (или другого языка).
  • took 42s — время выполнения последней тяжелой команды.

Часть 2: Git Stash — Полный справочник

Когда Starship показывает индикатор [$], это сигнал к использованию команд управления стеком.

1. Базовые операции

Команда Описание
git stash Спрятать все отслеживаемые изменения.
git stash -u Спрятать изменения, включая новые (untracked) файлы.
git stash list Посмотреть список всех накопленных стэшей.

2. Инспекция и выборочное восстановление

Не обязательно восстанавливать всё сразу.

  • Посмотреть код внутри: git stash show -p stash@{n} (выход — клавиша q).
  • Достать один файл: git checkout stash@{n} -- <path/to/file>
  • Применить и сохранить в списке: git stash apply stash@{n} (безопаснее, чем pop).

3. Решение конфликтов через новую ветку

Если код в стэше сильно устарел и не применяется к текущей ветке без ошибок:

git stash branch <new_branch_name> stash@{n}

Результат: Git создаст новую ветку от того коммита, где был сделан стэш, и чисто применит в неё изменения. Это изолирует решение конфликтов от основной ветки.

4. Гигиена хранилища

  • Удалить конкретный стэш: git stash drop stash@{n}
  • Очистить всё: git stash clear

Заключение

Сочетание визуального контроля (Starship) и глубокого владения инструментами (Git Stash) избавляет от необходимости помнить мелочи. Весь фокус остается на написании кода, а не на администрировании рабочего процесса.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment