● pwd — покажи, в какой я папке; ● ls — покажи файлы и папки в текущей папке; ● ls -a — покажи также скрытые файлы и папки, названия которых начинаются с символа .; ● cd first-project — перейди в папку first-project; ● cd first-project/html — перейди в папку html, которая находится в папке first-project; ● cd .. — перейди на уровень выше, в родительскую папку; ● cd ~ — перейди в домашнюю директорию (/Users/Username); cd / — перейди в корневую директорию.
● touch index.html — создай файл index.html в текущей папке; ● touch index.html style.css script.js — если нужно создать сразу несколько файлов, можно напечатать их имена в одну строку через пробел; ● mkdir second-project — создай папку с именем second-project в текущей папке. '''
● cp file.txt ~/my-dir — скопируй файл в другое место; ● mv file.txt ~/my-dir — перемести файл или папку в другое место.
● cat file.txt — распечатай содержимое текстового файла file.txt.
● rm about.html — удали файл about.html; ● rmdir images — удали папку images; ● rm -r second-project — удали папку second-project и всё, что она содержит.
Может показаться, что файлы в репозитории попадают в разные состояния хаотично. На практике это не так, и у большинства файлов вполне предсказуемый путь.
Файл только что создали. Git ещё не отслеживает содержимое этого файла. Состояние: untracked.
Файл добавили в staging area с помощью git add. Состояние: staged (+ tracked).
Возможно, изменили файл ещё раз. Состояния: staged, modified (+ tracked). Обратите внимание: staged и modified у одного файла, но у разных его версий.
Ещё раз выполнили git add. Состояние: staged (+ tracked).
Сделали коммит с помощью git commit. Состояние: tracked.
Изменили файл. Состояние: modified (+ tracked).
Снова добавили в staging area с помощью git add. Состояния: staged (+ tracked).
Сделали коммит. Состояния: tracked.
Повторили пункты 4−74-74−7 много-много раз.
№В процессе работы с Git вам будет часто встречаться понятие «хеш коммита». Эти странные строчки с бессмысленным (на первый взгляд) набором букв и цифр вы могли видеть, когда вызывали команду git log и выводили историю коммитов.
Что такое хеш. Хеширование коммитов Хеширование (от англ. hash, «рубить», «крошить», «мешанина») — это способ преобразовать набор данных и получить их «отпечаток» (англ. fingerprint). Информация о коммите — это набор данных: когда был сделан коммит, содержимое файлов в репозитории на момент коммита и ссылка на предыдущий, или родительский (англ. parent), коммит. Git хеширует (преобразует) информацию о коммите с помощью алгоритма SHA-1 (от англ. Secure Hash Algorithm — «безопасный алгоритм хеширования») и получает для каждого коммита свой уникальный хеш — результат хеширования. Обычно хеш — это короткая (40 символов в случае SHA-1) строка, которая состоит из цифр 0—9 и латинских букв A—F (неважно, заглавных или строчных). Она обладает следующими важными свойствами: если хеш получить дважды для одного и того же набора входных данных, то результат будет гарантированно одинаковый; если хоть что-то в исходных данных поменяется (хотя бы один символ), то хеш тоже изменится (причём сильно). Чтобы убедиться в этом, можно поэкспериментировать с SHA-1 на этом сайте — попробуйте ввести в поле input (англ. «ввод») разные символы, слова или предложения и понаблюдайте, как меняется хеш в поле output (англ. «вывод»). Хеш — основной идентификатор коммита Git хранит таблицу соответствий хеш → информация о коммите. Если вы знаете хеш, вы можете узнать всё остальное: автора и дату коммита и содержимое закоммиченных файлов. Можно сказать, что хеш — основной идентификатор коммита. При работе с Git хеши будут встречаться вам регулярно. Их можно будет передавать в качестве параметра разным Git-командам, чтобы указать, с каким коммитом нужно произвести то или иное действие. Все хеши и таблицу хеш → информация о коммите Git сохраняет в служебные файлы. Они находятся в скрытой папке .git в репозитории проекта.