Вопросы с меткой [git-bash]
git-bash — специализированная оболочка командной строки. При использовании этой метки, добавляйте метку git.
66 вопросов
Конкурсные
Неотвеченные
- Конкурсные 0
- Неотвеченные
- Цитируемые
- Рейтинг
- Неотвеченные (мои метки)
55 показов
Цвет линий веток в git log graph?
Настройки git config —global —list , параметры в конфиге для цвета не указаны. Вопрос, почему линии выводятся красным одним цветом (до слияния), ведь ветвей две? так и должно быть? или до слияния .
задан 3 окт в 10:47
Ошибка при push из-за большого файла в Git Bash
На удалённом сервере я сделал коммит для одного файла большого размера. И теперь при попытке сделать push для всех файлов, пишет что невозможно сделать. В итоге ни один файл не отправляется на Git. Я .
задан 10 сен в 16:37
45 показов
Почему появляется ошибка «Command not found» при запуске bash-скрипта в Windows 10?
Есть простой bash-скрипт, который должен выводить одно слово: Но при запуске скрипта выводится ошибка «»Command not found»». С чем это может быть связано и как запустить скрипт?
задан 29 июл в 11:37
Git bash работа с новым проектом
Работал впервый раз над проектом в git bash, мог что-то наложать с ветками, сейчас когда пытаюсь создать новый проект меня сразу закидывает на ветку с прошлого проекта как только начинаю в новой папке.
задан 10 фев в 12:40
214 показов
Почему не запускаются BASH файлы в Win 10?
Я пытаюсь запустить любой .sh файл в моей win 10, но они не запускаются. Из под консоли git-bash всё работает, но это не выход. Такое впечатление, что винда просто не может найти bash. Вот что в .
задан 1 фев в 9:01
Что значит удаленная ветка ,но локальная?
«»Удалённые ветки — это «специальные локальные ветки» задача которых указывать на состояние ветки в удаленном репозитории на момент последней синхронизации между локальным и .
задан 30 окт 2022 в 15:47
162 показа
git что означает флаг -p?
Есть команда в git bash git log -p — index.html Что означает флажок -p? Я гуглил — но нигде не нашёл.
задан 25 окт 2022 в 17:49
2k показов
Почему VS Code не видит «Git Bash»?
Появилась необходимость сделать Git Bash терминалом по умолчанию, но не напрямую задавая путь на bash.exe в «terminal.integrated.shell.windows»:, а через интерфейс VS Code: т.е. выбрать &.
задан 29 сен 2022 в 1:18
516 показов
Почему не работает ctrl+v в терминале Mingw
Почему у меня не работает ctrl+v в git? Как сделать так чтобы у меня здесь работала функция ctrl+v? Update:Окей ребят я понял что ctrl+ins я не хочу т.к это только в этой проге и капец как не удобно .
задан 27 сен 2022 в 3:15
467 показов
Использование SSH ключа не работает в GitBash
Развернут GitLab на своем сервере, там есть репозиторий который я пытаюсь клонировать. SSH ключи настроены. Я нахожусь под Windows. На команду в cmd ssh.exe git@хххххх.space GitLab отвечает «.
задан 6 сен 2022 в 8:48
Как Jupyter Notebook узнает, что Git Bash переключил ветку? [дубликат]
Как Jupyter Notebook (или другая программа для редактирования файлов) узнает, что Git Bash переключил ветку и необходимо открыть файл из новой ветки?
задан 23 мая 2022 в 20:44
87 показов
pytest не реагирует в bash
Подскажите, пожалуйста, почему в PowerShell и cmd pytest получается вызвать напрямую, а в bash приходится использовать python -m pytest, иначе ничего не происходит и bash ждёт следующей команды.
задан 21 фев 2022 в 22:38
263 показа
Как связать PyCharm с GitBash?
Мне необходимо сделать так, чтобы во время создания коммита открывался редактор PyCharm. Что бы я не делал, все заканчивается примерно этим: Путь к папке с PyCharm:C:\ProgramData\Microsoft\Windows\.
задан 6 фев 2022 в 13:56
604 показа
ошибка syntax error near unexpected token `newline’
При попытке выполнить в терминале Ubuntu20 User:$ ./index.html получил ошибку: ./index.html: line 1: syntax error near unexpected token ‘newline’ ./index.html: line 1: » Подскажите, в чем проблема.
задан 16 янв 2022 в 19:06
Как переписать линуксовые bash под mac os?
Как прописать такое на макось? #!/bin/bash sudo apt update && sudo apt upgrade -y sudo apt install -y gcc g++ make git cmake cmake-gui qt5-qmake qt5-default libqt5serialport5-dev sudo apt .
задан 5 окт 2021 в 9:31
15 30 50 на странице
-
Важное на Мете
Связанные метки
Подписаться на ленту
Лента новых вопросов с меткой [git-bash]
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.10.27.43697
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Git. Краткое руководство по терминалу
Данное краткое руководство демонстрирует основные команды в терминале Bash:
- Bash (Linux/Mac)
- Git Bash (Windows)
Открытие терминала
Первая задача: открыть терминал сразу в нужном каталоге.
Linux
В Linux достаточно щёлкнуть правой кнопкой мыши на каталоге и выбрать пункт меню Open in Terminal или Открыть в терминале :
Mac
В Mac всё немного сложнее, необходимо настроить отображение этого пункта меню в Finder.
Для этого необходимо перейти в Системные настройки , затем пункт меню Клавиатура , в разделе Службы выбрать раздел Файлы и папки и поставить флажок напротив Новый терминал по адресу папки :
После чего при клике правой кнопкой мыши на каталоге появится необходимый пункт меню:
Windows (Git Bash)
В Windows всё достаточно просто — клик правой кнопкой мыши на каталоге и выбор Git Bash Here :
Первоначальная настройка Git
После установки Git первое, что мы сделаем — укажем наши имя и адрес электронной почты. Это важно, потому как этой информацией подписывается каждый коммит (кто сделал изменения и его электронная почта). Для настройки потребуется ввести команды:
$ git config --global user.name "Thorin Oakenshield" $ git config --global user.email ereborsons@stone.com
Если указана опция —global , настройки применятся глобально, то есть для всех ваших действий в системе Git. Без этой опции настройки применяются локально, для текущего репозитория, и не влияют на глобальные настройки.
Пути
Одно окно терминала подразумевает, что вы можете в один момент времени находиться только в одном каталоге, который называется Current Working Directory (текущий каталог), так же как и в одном открытом окне Nautilus , Finder или проводника Windows.
Вы можете выполнять команды относительно текущего каталога или относительно абсолютного пути.
Абсолютный путь — это путь, начинающийся от корня файловой системы. Корень файловой системы обозначается символом / .
Например, в Git Bash (Windows) абсолютный путь для каталога Program Files , будет чаще всего выглядеть следующим образом: /c/Program Files/ .
Для домашнего каталога в Ubuntu (Linux), абсолютный путь будет выглядеть следующим образом: /home/user/ , где user — имя пользователя.
Bash (Git Bash в том числе) используют символ / для разделения каталогов.
Ещё два специальных обозначения помимо корня файловой системы:
- . — обозначает текущий каталог;
- .. — обозначает родительский каталог.
Важно: в терминале символ ` ` (пробел) является символом, разделяющим команды и опции. Поэтому если в пути есть пробел, то варианта два:
- заключать путь в кавычки, то есть «Program Files» ;
- использовать символ backslash для экранирования пробела: Program\ Files .
Переменные окружения
Командная оболочка устанавливает ряд переменных, которые выполняют специфические функции. Так, переменная с именем PATH содержит список путей, в которых будет производиться поиск программы, если вы наберёте её название в терминале.
Для вывода содержимого конкретной переменной используется команда echo следующим образом:
$ echo $PATH
Команда printenv позволяет отобразить все переменные окружения:
$ printenv
Видно, что в переменных окружения содержится достаточно много информации о системе.
Автодополнение
В командных оболочках работает автодополнение по клавише Tab :
- дополняются имена команд;
- дополняются пути.
Используйте автодополнение, так как оно позволяет сократить время на набор команды.
Ключевые команды
В этом разделе будут описаны ключевые команды, необходимые нам для работы. Естественно, список этот далеко не полный.
Текущий рабочий каталог
pwd — сокращение от “Print Working Directory”.
Отображение текущего рабочего каталога:
Смена рабочего каталога
cd — сокращение от “Change Directory”.
Переход в определённый каталог:
path может быть как абсолютным, так и относительным путём.
Например, перейти на каталог выше:
Перейти в подкаталог src :
$ cd src
Если перед путём нет слеша — он трактуется как относительный (относительно текущего каталога).
Листинг каталога
ls — сокращение от “List”.
Отображает листинг (содержимое каталога):
По умолчанию, ls не отображает файлы, начинающиеся с . , например, .gitignore . Для отображения таких файлов нужно использовать флаг -a :
$ ls -a
Создание файлов
Для создания файлов используются специальные программы (например, для создания текстовых файлов — текстовые редакторы).
В рамках рассмотрения Bash мы рассмотрим два текстовых редактора, которые позволят вам создавать и редактировать файлы в псевдографическом режиме.
nano
nano — простой текстовый редактор.
Для того, чтобы создать файл достаточно ввести команду nano и имя файла:
$ nano README.md
Откроется редактор следующего вида:
Пункты меню в нижней части вызываются с помощью горячих клавиш, где символ ^ обозначает клавишу Ctrl .
То есть чтобы записать файл и выйти следует последовательно нажать Ctrl + O (запись) и Ctrl + X (выход).
Редактор nano установлен в большинстве Unix-подобных операционных системах и Git Bash.
Vim
Редактор Vim (a programmer’s text editor) — профессиональный редактор, позволяющий достичь максимальной производительности при работе с любыми текстовыми файлами. Настолько популярен, что для любой графической среды (IDE, текстовых редакторов вроде VS Code, Atom, Sublime) всегда есть плагин, включающий возможность редактирования кода в режиме “Vim Mode”.
На освоение работы в Vim нужно потратить достаточно много времени, для этого вы можете воспользоваться интерактивным учебником vimtutor :
$ vimtutor
Мы лишь скажем, что для выхода из этого редактора (если вы всё-таки осмелились его открыть) нужно нажать клавишу Esc , затем ввести команду :q! — это позволит вам закрыть открытый файл без сохранения изменений.
VS Code
В видео-лекциях используется VS Code. В Windows вы можете правой кнопкой открыть каталог сразу в VS Code.
В Mac OS и Linux вы можете открыть терминал по адресу папки и в терминале выполнить команду code . & , которая откроет выбранный вами каталог в этом редакторе.
Если ни то, ни другое у вас не получилось, то просто откройте VS Code и через File — Open откройте нужный каталог.
Создание каталогов
mkdir — сокращения от “Make Directory”.
Позволяет создавать каталоги (создаст каталог tmp в текущем каталоге):
$ mkdir tmp
Стоит обратить внимание на поведение при создании нового каталога в текущей директории. После команды mkdir name ваше текущее расположение в терминале не изменится. Для того, чтобы работать внутри созданного каталога, в него требуется перейти командой cd name . Это справедливо и при клонировании удалённого репозитория с помощью команды git clone . Полностью склонированный репозиторий создаст каталог в текущей директории с именем проекта, в который нужно перейти командой cd repo_name .
Перемещение файлов и каталогов
mv — сокращение от “Move”.
Перемещение (переименование) файлов и каталогов:
$ mv tmp temp
Удаление файлов и каталогов
rm — сокращение от “Remove”.
sasstr / Команды в Git Bash консоли
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Команды в Git Bash консоли |
clear — Очистить консоль |
Навигация |
pwd — Показать текущий каталог |
ls — Показать файлы в данной папке, кроме скрытых |
ls -f — Показать файлы в данной папке, включая и скрытые |
cd c:/ — Перейти в конкретный каталог |
cd — — Вернуться назад |
cd .. — Выйти на 1 уровень вверх |
cd ../.. — Выйти на 2 уровня вверх |
Создание каталогов |
mkdir — Создать папку |
cd !$ — Перейти в только что созданную папку |
mkdir -p — Создать сразу несколько папок |
mkdir -p app/ — Создать сразу несколько вложенных папок |
Создание файлов |
touch index.html — Создать файл index.html |
touch app/ — Создать сразу несколько файлов, никаких лишних пробелов быть не должно |
Удаление файлов |
touch — позволяет создавать файлы |
rm test — Удалить пустую папку test |
rm -r test — Удалить папку test с файлами внутри неё |
Перемещение файлов |
mv app1/*.* app2 — Переместить все файлы из папки app1 в папку app2 |
jt3k commented Jun 26, 2020 •
Почему все вокруг копируют на разбираясь cd c:/ ?
Я не уверен но по-моему это команда для шиндовс указывающая на переход в корень диска цэ.
Но баг как правило в юникс-подобных операционных системах, а в юнткс-подобных ос никаких дисков цэ не существует
petroDavydov commented Nov 28, 2021 •
У мен сработало в Bash cd d:/
jt3k commented Dec 6, 2021 •
Ну ок, тогда ладно. У меня в линуксах не сработает
AntooxaD commented Apr 15, 2022 •
ls — Показать файлы в данной папке, кроме скрытых
ls -f — Показать файлы в данной папке, включая и скрытые
НАОБОРОТ. ls — показывает все файлы и скрытые! А ls -f все кроме скрытых! По крайней мере у меня так на виндовс! может на Mac по другому
MaxOnRem commented Sep 18, 2022
нет, всё написано правильно, флаг показывает все включая скрытые, а еще команда ls -a так же работает
jt3k commented Oct 10, 2022 •
нет, всё написано правильно, флаг показывает все включая скрытые, а еще команда ls -a так же работает
в версии под мак вот такая справка для этих ключей:
-a Include directory entries whose names begin with a dot (‘.’). -f Output is not sorted. This option turns on -a. It also negates the effect of the -r, -S and -t options. As allowed by IEEE Std 1003.1-2008 (“POSIX.1”), this option has no effect on the -d, -l, -R and -s options.
тоись
-а выводит вам скрытые директории(и файлы) те что начинаются с точки. При этом будет произведена сортировка
-f выводит то же что и -a но без любой сортировки (инфа 21%)
ZdraviiSmisl commented Jun 21, 2023 •
Может, стоило указаать , что нужно указывать абсолютный путь для дериктории в которую перещаете файлы? Для комманды перемещения всех файлов из одной папки в другую
mv: cannot stat ’01-starting-setup/.‘: No such file or directory
89610090091 commented Jun 21, 2023 via email
Добрый день! Скорее сообщение было адресовано не мне, хотя с git bash знаком сам. Может сообщение было важным, отправьте в нужный адрес. ср, 21 июн. 2023 г., 17:29 Evgeniy Arapov ***@***.***>:
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Footer
© 2023 GitHub, Inc.
You can’t perform that action at this time.
How to add more to Git Bash on Windows
Git for Windows comes bundled with the «Git Bash» terminal which is incredibly handy for unix-like commands on a windows machine. It is missing a few standard linux utilities, but it is easy to add ones that have a windows binary available.
The basic idea is that C:\Program Files\Git\mingw64\ is your / directory according to Git Bash (note: depending on how you installed it, the directory might be different. from the start menu, right click on the Git Bash icon and open file location. It might be something like C:\Users\name\AppData\Local\Programs\Git , the mingw64 in this directory is your root. Find it by using pwd -W ). If you go to that directory, you will find the typical linux root folder structure ( bin , etc , lib and so on).
If you are missing a utility, such as wget, track down a binary for windows and copy the files to the corresponding directories. Sometimes the windows binary have funny prefixes, so you should rename the .exe file to the standard name. Since bin is on the PATH, it will be automatically available to Git Bash.
Note: Many interactive utilities, such as python , ipython or nano , will not display properly with Git Bash’s mintty terminal. Try invoking them with winpty instead, for example winpty ipython will work nicely. The Git-for-Windows team is focused on supporting Git, not a full UNIX shell environment. If you are interested in more complete package with build tools, check my notes on Cygwin or Cmder—or install Windows Subsystem for Linux or WSL2.
Here are some utilities to add:
Wget
- Download the lastest wget binary for windows from eternallybored (they are available as a zip with documentation, or just an exe)
- If you downloaded the zip, extract all (if windows built in zip utility gives an error, use 7-zip).
- Rename the file wget64.exe to wget.exe if necessary.
- Move wget.exe to your Git\mingw64\bin\ .
Note: I have noticed some bugs when using Wget on Git Bash to create WARC files. For more complex use of Wget, consider Cygwin instead.
Hugo
Hugo static site generator can be downloaded as a binary and does not have a installer. Dropping it into your bin easily adds it to your Git Bash path. Grab the Windows 64-bit version from the releases page. Unzip the download, then copy hugo.exe into your Git\mingw64\bin directory.
Xpdf
Xpdf is a handy utility for manipulating PDF files.
- Download the windows version «Xpdf tools».
- Extract zip.
- Copy the contents of xpdf-tools-win-4.00\bin64\ into your Git\mingw64\bin\ .
- Check the docs to get started with tools such as pdftotext and pdftopng .
ExifTool
- Download the «stand-alone Windows Executable» from the ExifTool page (this will be a .zip file e.g. «exiftool-11.99.zip»).
- Unzip the downloaded file.
- Inside you will find a file named exiftool(-k).exe . Rename it to exiftool.exe .
- Move exiftool.exe to your Git\mingw64\bin\ .
Other possibilities
Most utilities that provide binary releases for Windows can be added to GitBash following the same pattern. Here are some more handy examples:
make
Keep in mind you can easy add make , but it doesn’t come packaged with all the standard UNIX build toolchain—so you will have to ensure those are installed and on your PATH, or you will encounter endless error messages.
- Go to ezwinports.
- Download make-4.1-2-without-guile-w32-bin.zip (get the version without guile).
- Extract zip.
- Copy the contents to your Git\mingw64\ merging the folders, but do NOT overwrite/replace any existing files.
Nano
As of 2018, recent versions of Git Bash include Nano, so this is unnecessary! Just be sure to choose Nano as your default editor when installing Git for Windows.
- Download the Nano binary from Nano win32-support page. You just need the .exe file, which is named nano-git-0d9a7347243.exe (as of this writing).
- Rename the file to nano.exe , and copy to the mingw64\bin directory.
- This version of Nano will not work with Git Bash alone, but can be invoked using winpty , for example, winpty nano test.txt .