Блог веб разработки

Блог веб-разработки статьи | видеообзоры | исходный код

gitignore GIT

Всем доброго времени суток и мы продолжаем знакомство с контролем версий git.

Откроем консольное окно GIT Bash Here в папке с репозиторием.

И давайте сразу рассмотрим следующую команду.

git status

c помощью этой команды мы можем определить все проиндексированные и неиндексированные файлы. Под индексированными файлами подразумевается что они были добавлены в наш git репозиторий с помощью команды git add (файлы) и не занесены в файл .gitignore про него мы поговорим далее. И неиндексированные, следовательно либо они содержаться в файле .gitignore, или мы их только добавили, удалили или изменили.

Все проиндексированные файлы и директории отображаются зеленым цветом, а неиндексированные красным.

Для примера давайте добавим в нашу папку с репозиторием новый файл или директорию, далее повторно выполним команду git status.

И мы увидим что данный файл или директория отображаются красным цветом так как не были проиндексированы версией контроля. Для индексации их необходимо добавить командой:

git add название файла или директории

после этой команды наш файл будет проиндексирован убедится в этом вы можете повторно выполнив команду git status. Такая же ситуация произойдет если мы внесем изменения в какой либо файл или удалим его из репозитория, здесь также придется зафиксировать изменение индексацией в системе контроля git.

Вывод команды git status можно привести к более читабельному виду добавить к ней флаг -s

git status -s

в чем же удобство такой команды? А в том что она более кратко выводит сообщение о состояниях файлов, пример вывода:

A file1 - проиндексированный файл

AD file2 - файл который был удален

M file3 - файл в который были внесены изменения

?? file4 - неизвестный файл или неиндексированный.

Вот так вот с помощью команды git status мы можем определять состояния файлов.

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

И для того чтобы этой файл или группа файлов не учитывались, существует специальный файл .gitignore в котором перечисляются все файлы которые не подлежат индексации в системе, то есть они в ней никак не учитываются.

Пример: давайте добавим новый файл в нашу папку репозитория и здесь же создадим файл .gitignore у этого файла как и у .htaccess имя не указывается.

В самом .gitignore необходимо указать какие файлы мы хотим чтобы не учитывались.Пример:

#Файлы которые не будут учитываться
file.php
*.xml
rules.php
#Папки которые не будут учитываться
folder

С помощью решетки мы указываем однострочный комментарий, это условные обозначения которые никак не влияют на результат.

Как видите здесь мы запретили индексацию файла file.php, всех файлов заканчивающихся на xml и директорию folder.

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

И напоследок я хотел вам рассказать еще об одной команде которая можем вам быть крайне полезна. С помощью команды git status мы можем отследить только внешнее состояние файла. Но что если мы хотим посмотреть внесенные изменения внутри файла? Для этого существует команда git diff

Введите:

git diff

если ваши файлы все проиндексированны, то данная команда ничего не вернет. Давайте внесем изменения в файлы репозитория. И попробуем выполнить данную команду повторно.

Нам вернулись все наши изменения в виде отображения - красным цветом обозначается старое состояние ,зеленым цветом новое.

Тут еще важно понимать что данная команда показывает только все изменения еще неиндексированных файлов.

Если вы выполните команду

git add .

то есть добавите(проиндексируете) все файлы тогда, команда git diff вернет вам уже пустой результат.

Если мы хотим просмотреть внесенные изменения уже проиндексированных файлам , нам нужно добавить флаг --cached

git diff --cached

в итоге мы увидим все изменения уже в проиндексированных файлах.

Вот так мы можем отслеживать состояние файлов и их изменения.

На этом дорогие друзья данная статья подходит к концу. Надеюсь сегодня вы узнали что то новое.

Я желаю вам успехов и удачи! Пока!

Оцените статью

Еще статьи

Javascript генераторы

Переменные окружения PHP

Индикаторы html

Компоненты php

методы классов PHP

details html

Скриншоты python

spellcheck html

Комментарии

MiraMeect

Работа в интернете

18:48 23-04-2019

История

    НОВОСТИ

    • Опубликовал приложение под android 'Аудиокниги'. Кому интересно, переходите по ссылке