что такое git bash
Что такое Git Bash и как его установить на Windows?
Git Bash — это командная строка, с помощью которой пользователи могут использовать функции Git. Он эмулирует среду bash в Windows и позволяет пользователю использовать большинство стандартных команд Unix. Это для пользователей, которые знакомы с терминалом bash операционных систем Unix. Существует также Git CMD, которая похожа на обычную командную строку Windows, где пользователи могут использовать все функции Git через командную строку. Большинство пользователей, которые являются новичками в GitHub, не знают о Git Bash и о том, как он работает. В этой статье мы расскажем вам, что такое Git Bash и как вы можете установить или запустить его в первый раз.
Что такое Git Bash?
Git Bash — это приложение для сред Microsoft Windows, которое предоставляет эмуляцию bash, используемую для запуска Git из командной строки. Это не простой bash, скомпилированный для Windows, а пакет, содержащий Bash, SSH, SCP и некоторые другие утилиты Unix, скомпилированные для Windows. Он также содержит новое окно терминала интерфейса командной строки под названием minty. Эти утилиты связаны с этим пакетом Bash, чтобы создать полезный пакет программного обеспечения.
В Windows мы обычно запускаем команды в CMD, но на самом деле это исполняемые файлы, которые существуют в папке C: Windows System32. То же самое касается bash, для работы команд требуются утилиты. В системах Unix эти утилиты будут находиться в каталоге / usr / bin. Итак, после установки Git Bash эти утилиты будут установлены в папку C: Program Files Git usr bin.
Загрузка и установка Git Bash для Windows
Установка Git Bash проста, как и установка любого другого программного обеспечения. Вы можете скачать его с официального сайта. Тем не менее, он имеет несколько параметров в установке, которые вы можете настроить в зависимости от ваших требований. Мы собираемся показать вам шаги для каждого важного параметра в установке Git Bash.
Запуск и тестирование Git Bash
Если вы знакомы с работой в командной строке, вам будет гораздо легче начать работу с Git Bash. Он похож на CMD в Windows, вы можете открыть его и сменить каталог на папку, в которой вы хотите работать, или вы можете напрямую открыть ее внутри папки. Чтобы подключить Git Bash к вашей учетной записи GitHub, требуется несколько шагов и войдите в учетную запись GitHub. Для начала выполните следующие шаги:
Примечание. Если у вас уже есть хранилище, пропустите шаг 2 и шаг 3.
Git Bash
По сути Git — это набор служебных программ командной строки, предназначенных для выполнения в Unix-подобных средах. Современные операционные системы, такие как Linux и macOS, имеют встроенные терминалы командной строки. Благодаря этому они особенно удобны для работы с Git. В Microsoft Windows используется командная строка Windows, отличная от терминала Unix-систем.
В средах Windows система Git часто упаковывается в виде части высокоуровневого приложения с графическим интерфейсом. Графические интерфейсы для Git могут абстрагировать и скрывать базовые компоненты системы контроля версий, которая лежит в основе. Это отличное подспорье для новичков в Git, чтобы они могли быстро внести свой вклад в проект. Но когда требования повышаются и предполагается работа с остальными членами команды, необходимо понимать принципы работы исходных методов Git. Тогда может быть выгодно отказаться от версии с графическим интерфейсом в пользу инструментов командной строки. Интерфейс терминала Git предлагается в приложении Git Bash.
Что такое Git Bash?
Git Bash — это приложение для сред Microsoft Windows, эмулирующее работу командной строки Git. Bash — аббревиатура от Bourne Again Shell. Оболочка (Shell) представляет собой приложение терминала для взаимодействия с операционной системой с помощью письменных команд. Bash — популярная оболочка, используемая по умолчанию в Linux и macOS. Git Bash представляет собой пакет, который устанавливает в операционную систему Windows оболочку Bash, некоторые распространенные утилиты Bash и систему Git.
Установка Git Bash
Использование Git Bash
Git Bash поддерживает те же операции, что и стандартная оболочка Bash. Полезно изучить основные примеры использования Bash. Поскольку этот документ посвящен системе Git, расширенные примеры использования Bash здесь не рассматриваются.
Навигация по папкам
Bash-команда pwd используется для вывода пути к текущему рабочему каталогу. Команда pwd эквивалентна выполнению команды cd в терминале DOS (или в консоли Windows). Это папка или путь для текущего сеанса Bash.
Bash-команда ls используется для вывода списка содержимого текущего рабочего каталога. Команда ls эквивалентна команде DIR в консоли Windows.
Команды Git Bash
Готовы изучить Git?
Ознакомьтесь с этим интерактивным обучающим руководством.
guides
Введение
Данное краткое руководство демонстрирует основные команды в терминале Bash:
Открытие терминала
Первая задача: открыть терминал сразу в нужном каталоге.
Linux
В Linux достаточно щёлкнуть правой кнопкой мыши на каталоге и выбрать пункт меню Open in Terminal или Открыть в терминале :
В Mac всё немного сложнее, необходимо настроить отображение этого пункта меню в Finder.
После чего при клике правой кнопкой мыши на каталоге появится необходимый пункт меню:
Windows (Git Bash)
Первоначальная настройка Git
Вы можете выполнять команды относительно текущего каталога или относительно абсолютного пути.
Bash (Git Bash в том числе) используют символ / для разделения каталогов.
Ещё два специальных обозначения помимо корня файловой системы:
Важно: в терминале символ ` ` (пробел) является символом, разделяющим команды и опции. Поэтому если в пути есть пробел, то варианта два:
Переменные окружения
Командная оболочка устанавливает ряд переменных, которые выполняют специфические функции. Так, переменная с именем PATH содержит список путей, в которых будет производиться поиск программы, если вы наберёте её название в терминале.
Для вывода содержимого конкретной переменной используется команда echo следующим образом:
Команда printenv позволяет отобразить все переменные окружения:
Видно, что в переменных окружения содержится достаточно много информации о системе.
Автодополнение
В командных оболочках работает автодополнение по клавише Tab :
Используйте автодополнение, так как оно позволяет сократить время на набор команды.
Ключевые команды
В этом разделе будут описаны ключевые команды, необходимые нам для работы. Естественно, список этот далеко не полный.
Текущий рабочий каталог
Отображение текущего рабочего каталога:
Смена рабочего каталога
Переход в определённый каталог:
path может быть как абсолютным, так и относительным путём.
Например, перейти на каталог выше:
Перейти в подкаталог src :
Листинг каталога
Отображает листинг (содержимое каталога):
Создание файлов
В рамках рассмотрения Bash мы рассмотрим два текстовых редактора, которые позволят вам создавать и редактировать файлы в псевдографическом режиме.
Для того, чтобы создать файл достаточно ввести команду nano и имя файла:
Откроется редактор следующего вида:
То есть чтобы записать файл и выйти следует последовательно нажать Ctrl + O (запись) и Ctrl + X (выход).
Редактор nano установлен в большинстве Unix-подобных операционных системах и Git Bash.
На освоение работы в Vim нужно потратить достаточно много времени, для этого вы можете воспользоваться интерактивным учебником vimtutor :
VS Code
В видео-лекциях используется VS Code. В Windows вы можете правой кнопкой открыть каталог сразу в VS Code.
Создание каталогов
Позволяет создавать каталоги (создаст каталог tmp в текущем каталоге):
Перемещение файлов и каталогов
Перемещение (переименование) файлов и каталогов:
Git и GitBash
Как и зачем работать с Git через командную строку? В статье содержится набор простых действий и команд, которые помогут разобраться с этим.
Перед началом статьи полезно было бы напомнить некоторые термины:
Репозиторий — место, где хранятся и поддерживаются какие-либо данные. Чаще всего данные в репозитории хранятся в виде файлов, доступных для дальнейшего распространения по сети.
Коммит (commit) — фиксация изменений любых файлов, входящих в репозиторий
Merge — слияние, принимает содержимое ветки источника и объединяет их с целевой веткой.
Push( или “Запушить”) — передача последних фиксаций на удаленный репозиторий
Работать с системой контроля версий и удалённым репозиторием можно внутри многих сред программирования. Такую функцию поддерживают, например, Visual Studio или среды компании JetBrains (PyCharm, IntelijIdea и т.д). Однако в некоторых случаях GUI не очень удобен, и приходится прибегать к работе через консоль. В нашем случае через GitBash.
Пусть на начальном уровне функционала IDEA более чем достаточно, полезно было бы уметь работать через консоль, чтобы иметь представление хотя бы об альтернативе.
Разбирать мы будем самые простые команды для:
Создание репозитория
Здесь есть несколько вариантов. Например, проект уже может лежать у нас на компьютере, а нам необходимо подключить его к системе контроля версий и связать его с GitHub. Либо же какой-то код уже имеется на удаленном репозитории GitHub, а нам лишь необходимо получить его и начать работу.
Разберем сначала второй вариант, но для начала откроем GitBash. У нас появится такое окно:
У гита есть настройка пользователя, от которого будет идти работа. Это разумная и необходимая вещь, так как когда создается коммит, гит берет именно эту информацию для поля Author. Чтобы настроить имя пользователя и пароль для всех проектов, нужно прописать следующие команды:
Далее нам необходимо выбрать папку, где будет лежать проект.
Для этого прописываем путь к папке в таком формате:
Сверху, выше черного пространства указан путь по умолчанию, поэтому можно не прописывать его заново, если мы решили сохранять проект внутри дочерних папок этого пути. В моем случае:
Далее нажимаем Enter. Теперь нам нужно «клонировать» проект из удаленного репозитория. Для этого находим нужный проект на GitHub.
Нажимаем на кнопку Code и из выпадающего окна копируем HTPPS ссылку.
Далее в консоли git bash пишем:
Теперь файлы репозитория лежать у нас на компьютере. Снова воспользуемся командой cd чтобы по относительному пути перейти в папку проекта.
Как мы видим появилась возле относительного пути надпись master, это означает что файлы данной папки подключены на систему контроля версий и на данный момент мы находимся на ветке с название master. Что такое ветки я расскажу позднее.
Теперь разберем вариант, когда у нас уже имеется какой либо проект, а нам его нужно подключить к git и загрузить на удаленный репозиторий GitHub
Для этого заходим в папку нашего проекта через консоль gitBash и используем команду:
git init — подключаем файлы к системе контроля версий
Как и в прошлый раз видим надпись master, значит, репозиторий создан, НО пока что локальный. Свяжем его с удаленным, предварительно создав на GitHub.
Так же как и в первом варианте копируем HTTPS ссылку и открываем gitBash.
Теперь мы связали наш локальный и удаленный репозитории. Осталось лишь загрузить файлы на GitHub.
Проверим командой git status возможность сделать commit.
Как мы видим файл SomeFiles.txt был изменен, но пока не готов к коммиту.
Если никаких надписей не появится – все ОК.
Теперь наши файлы готовы к коммиту.
— фиксируем изменение проекта
Чтобы проверить последние коммиты напишем команду
git log — список коммитов с полной информацией
ВАЖНО! После этой команды станет недоступна командная строка, чтобы вернуться наберите “q” в нижней строке.
git log —oneline — список коммитов с краткой информацией
И последний шаг – выгрузка на GitHub
git push —set-upstream origin master – загружаем все на удаленный репозиторий. Приписка —set-upstream origin master – связывает нашу локальную ветку master с одноименной удаленной.
Проверяем на GitHub и видим, что все файлы успешно загружены
Теперь предположим, что у нас уже есть локальный репозиторий и он связан с удаленным. Допустим какой- то программист сделал изменения в проекте и «запушили» на GitHub. Как получить обновленный код?
Для этого есть команда
git pull – обновить локальную копию удаленного репозитория
Теперь у вас на компьютере актуальная версия проекта. Можно снова править, коммитить и пушить.
Работа с ветками
Ветка в Git это подвижный указатель на один из коммитов. Обычно ветка указывает на последний коммит в цепочке коммитов. Ветка берет свое начало от какого-то одного коммита.
Во время создания проекта под управлением системы контроля версий создается ветка по умолчанию – master.
Ветка по сути — это ответвление от текущей версии проекта. Все изменения, которые будет вносить разработчик, будут сохраняться в ветке и когда функция будет полностью реализована и проверена, разработчик сможет слить все свои изменения с веткой master
Как часто бывает, над проектом работает сразу несколько программистов, и допустим, один из них работает над какой-нибудь новой функцией. Если он будет вносить изменения в master, то эти изменения могут повлиять на работоспособность проекта.
Чтобы создать ветку нужно прописать
Теперь, нужно перейти на новую ветку
Но можно все сделать за один шаг
Когда программист решает, что его функция полностью работает, он может перекинуть все изменения с рабочей ветки на ветку master. Для этого нужно переключить на основную ветку и сделать merge:
Теперь можно коммитить и пушить изменения.
Попов Даниил, после окончания базового курса, октябрь 2020
Git для новичков (часть 1)
Что такое Git и зачем он нужен?
С помощью Git-a вы можете откатить свой проект до более старой версии, сравнивать, анализировать или сливать свои изменения в репозиторий.
Репозиторием называют хранилище вашего кода и историю его изменений. Git работает локально и все ваши репозитории хранятся в определенных папках на жестком диске.
Так же ваши репозитории можно хранить и в интернете. Обычно для этого используют три сервиса:
Как работает
В итоге получается очень простой граф, состоящий из одной ветки ( main ) и четырех commit. Все это может превратиться в более сложный граф, состоящий из нескольких веток, которые сливаются в одну.
Об этом мы поговорим в следующих статьях. Для начала разберем работу с одной веткой.
Установка
Основой интерфейс для работы с Git-ом является консоль/терминал. Это не совсем удобно, тем более для новичков, поэтому предлагаю поставить дополнительную программу с графическим интерфейсом (кнопками, графиками и т.д.). О них я расскажу чуть позже.
Но для начала, все же установим сам Git.
Windows. Проходим по этой ссылке, выбираем под вашу ОС (32 или 64 битную), скачиваем и устанавливаем.
Для Mac OS. Открываем терминал и пишем:
Linux. Открываем терминал и вводим следующую команду.
Настройка
Вы установили себе Git и можете им пользоваться. Давайте теперь его настроим, чтобы когда вы создавали commit, указывался автор, кто его создал.
Открываем терминал (Linux и MacOS) или консоль (Windows) и вводим следующие команды.
Создание репозитория
Теперь вы готовы к работе с Git локально на компьютере.
Создадим наш первый репозиторий. Для этого пройдите в папку вашего проекта.
Теперь Git отслеживает изменения файлов вашего проекта. Но, так как вы только создали репозиторий в нем нет вашего кода. Для этого необходимо создать commit.
Отлично. Вы создали свой первый репозиторий и заполнили его первым commit.
Процесс работы с Git
Не стоит после каждого изменения файла делать commit. Чаще всего их создают, когда:
Создан новый функционал
Добавлен новый блок на верстке
Исправлены ошибки по коду
Вы завершили рабочий день и хотите сохранить код
Это поможет держать вашу ветки в чистоте и порядке. Тем самым, вы будете видеть историю изменений по каждому нововведению в вашем проекте, а не по каждому файлу.
Визуальный интерфейс
Как я и говорил ранее, существуют дополнительные программы для облегчения использования Git. Некоторые текстовые редакторы или полноценные среды разработки уже включают в себя вспомогательный интерфейс для работы с ним.
Но существуют и отдельные программы по работе с Git. Могу посоветовать эти:
Я не буду рассказывать как они работают. Предлагаю разобраться с этим самостоятельно.
Создаем свой первый проект и выкладываем на GitHub
Давайте разберемся как это сделать, с помощью среды разработки Visual Studio Code (VS Code).
Перед началом предлагаю зарегистрироваться на GitHub.
Создайте папку, где будет храниться ваш проект. Если такая папка уже есть, то создавать новую не надо.
Установите себе дополнительно анализаторы кода для JavaScript и PHP
Откройте вашу папку, которую создали ранее
После этого у вас появится вот такой интерфейс
Здесь будут располагаться все файлы вашего проекта
Здесь можно работать с Git-ом
Кнопка для создания нового файла
Кнопка для создания новой папки
Давайте теперь перейдем во вкладу для работы с Git-ом.
Откроется вот такое окно:
Кнопка для публикации нашего проекта на GitHub
Вы создали и опубликовали репозиторий на GitHub.
Теперь сделаем изменения в коде и попробуем их снова опубликовать. Перейдите во вкладку с файлами, отредактируйте какой-нибудь файл, не забудьте нажать crtl+s (Windows) или cmd+s (MacOS), чтобы сохранить файл. Вернитесь обратно во вкладу управления Git.
Если посмотреть на значок вкладки Git, то можно увидеть цифру 1 в синем кружке. Она означает, сколько файлов у нас изменено и незакоммичено. Давайте его закоммитим и опубликуем:
Кнопка для просмотра изменений в файле. Необязательно нажимать, указал для справки
Добавляем наш файл для будущего commit
Отправляем наш commit в GitHub
Поздравляю, вы научились создавать commit и отправлять его в GitHub!
Это первая вводная статья по утилите Git. Здесь мы рассмотрели:
Как его устанавливать
Как его настраивать
Как инициализировать репозиторий и создать commit через консоль
Как на примере VS Code, опубликовать свой код на GitHub
Забегая вперед, советую вам погуглить, как работают следующие команды:
P.S. Для облегчения обучения, оставлю вам ссылку на бесплатный тренажер по Git.