1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/xnng-bash

Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Git Bash

Мой Git Bash

GitHub

Содержание

Цель этого репозитория заключается в исследовании способов создания удобной консольной среды на Windows. С появлением Windows Terminal и WSL2 Microsoft предложила лучшее решение. Однако, текущая версия WSL2 по-прежнему напоминает виртуальную машину и требует значительных ресурсов, что делает её непригодной для использования на компьютерах с 8 ГБ оперативной памяти. Я считаю, что на данном этапе лучшим выбором будет комбинация Windows Terminal (терминал) и Git Bash (shell), с использованием WSL2 в качестве поддержки.

Поэтому я рекомендую использовать Windows Terminal в качестве терминала и Git Bash в качестве shell. Основное преимущество Git Bash заключается в использовании alias и встроенных часто используемых команд Linux, а также в высокой производительности. С другой стороны, Windows Terminal предлагает лучшую настраиваемость и удобство использования в качестве терминала, например, благодаря встроенным функциям многоколоночного режима и разделения экрана. В настоящее время в Windows Terminal необходимо самостоятельно настроить сочетания клавиш, я разместил свои настройки в файле profiles.json, который можно использовать в качестве примера.

Начало работы

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

$ git clone https://github.com/xnng/my-git-bash.git
$ cd my-git-bash

зеркало на gitee:

$ git clone https://gitee.com/xnng/bash.git
$ cd bash

Установка шрифтов

Эти шрифты решают проблему смешения символов Unicode. После выполнения команды перетащите файл шрифтов внутрь для завершения установки.

$ start c://Windows//Fonts && start %cd%/fonts

Git Bash

Установка темы

$ cp .minttyrc ~ && cp git-prompt.sh /etc/profile.d

Git Bash

После установки темы будут активированы быстрые клавиши для копирования и вставки: Ctrl + Shift + C/V. Для использования этих клавиш необходимо, чтобы версия Git Bash была выше 2.20.0.

Установка Tmux

Tmux — это мощный инструмент для управления терминалом, который позволяет использовать несколько вкладок в одном окне и делить экран. С помощью плагинов можно сохранять и восстанавливать данные окон одним щелчком.

Исходный код tmux для Windows: https://github.com/hongwenjun/tmux_for_windows

$ cp tmux/bin/* /usr/bin && cp tmux/share/* /usr/share -r

Активировать управление мышью:

$ echo -e "setw -g mouse\nset-option -g mouse on" > ~/.tmux.conf

Инструкции по использованию Tmux: https://juejin.im/post/5a8917336fb9a0633e51ddb9

tmux основные операции

Демонстрация основных операций tmux

tmux разбиение окна

Демонстрация разбиения окна tmux
### Установка wget и команды tree
$ cp tools/* /usr/bin

Быстрые клавиши терминала

Вот быстрые клавиши терминала Git Bash

Клавиша Эффект
Alt + Enter Полный экран
Закрыть окно Ctrl + D (только если текущая строка пуста)
Очистить Ctrl + L
Открыть терминал Правый клик на ярлыке, настройка в свойствах
Копировать/вставить Ctrl + Shift + C/V (начиная с версии v2.20.0)

Другие быстрые клавиши соответствуют стандартным быстрым клавишам Bash, например Ctrl + R для поиска истории команд, exit для выхода из терминала, clear и reset для очистки экрана, Ctrl + E/A для перемещения курсора в начало или конец строки, и т.д. Подробнее можно найти в интернете.

Личные настройки

Ниже приведены мои личные настройки, не следует копировать их.

Установка моих alias

$ cp .bash_profile ~

Установка моего конфига tmux

$ cp tmux/.tmux.conf ~

Установка tmux плагина для автоматического восстановления и сохранения сессий

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

$ mkdir -p ~/.tmux/plugins/tpm
$ git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm

Откомментируйте все строки и установите плагины, нажав prefix I.### Установка моего конфига git

$ cp .gitconfig ~

Другое

Настройка Git Bash в VSCode

Для использования Git Bash в VSCode достаточно добавить следующие строки в Settings.json, путь к bash.exe следует заменить на свой.

{
  "terminal.integrated.shell.windows": "C:\\Program Files\\Git\\bin\\bash.exe",
  "terminal.integrated.shellArgs.windows": ["--login", "-i"]
}

Git Bash

Решение проблемы быстрого запуска клавиш в Windows 10

После настройки глобальных快捷键 для Git Bash, может возникнуть ситуация, когда нажатие этих клавиш приводит к задержке в два секунды перед открытием терминала. Для решения этой проблемы необходимо отключить службу superFetch, которая в более новых версиях Windows 10 была переименована в sysMain. Изменения вступят в силу после перезапуска операционной системы.

Решение проблем с некоторыми командами, которые могут зависать или не позволять выбрать опции с помощью стрелок

При использовании некоторых команд, таких как python, mongo, mysql, redis-cli, может возникнуть зависание или невозможность выбора опций с помощью стрелок. Для решения этой проблемы необходимо добавить winpty перед командой. Это может быть неудобно, поэтому можно создать псевдонимы для команд, например:

alias wsl='winpty wsl'
alias mysql='winpty mysql -uroot -p'
alias mongo='winpty mongo'
alias redis-cli='winpty redis-cli'
```Многие консольные инструменты предоставляют возможность выбора опций с помощью стрелок, но эта функция может не работать в `Git Bash`. Для решения этой проблемы необходимо добавить `winpty` перед командой и использовать расширение `.cmd`, например:

```bash
alias vue='winpty vue.cmd'

История обновлений

  • 2019-11-08

    • Добавлены настройки для Windows Terminal
  • 2019-04-28

    • Добавлено решение проблемы зависания некоторых команд и невозможности выбора опций с помощью стрелок
  • 2019-03-25

    • Добавлены настройки для Visual Studio Code
    • Добавлено решение проблемы задержки при запуске Git Bash
  • 2019-03-23

    • Удален скрипт для одноклик-установки, разделены общие и личные настройки
    • Добавлен демонстрационный GIF для tmux
    • Добавлен список быстрых клавиш
  • 2019-02-03

    • Удален скрипт настройки vim
    • Заменены Unicode символы на точки для повышения совместимости
    • Исправлены скрипты установки
    • Включена поддержка 256 цветов
    • Улучшена цветовая схема состояния tmux
    • Включена поддержка быстрых клавиш Ctrl + Shift + C/V
  • 2018-12-24

    • Добавлены плагины для tmux, чтобы сессии сохранялись локально
    • Цвет фона терминала изменен с зелёного на серый
    • Цвет красного изменён обратно на красный с оранжевого

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Описание недоступно Развернуть Свернуть
MIT
Отмена

Обновления

Пока нет обновлений

Участники

все

Язык

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/xnng-bash.git
git@api.gitlife.ru:oschina-mirror/xnng-bash.git
oschina-mirror
xnng-bash
xnng-bash
master