-Git это программа которая напоминает командную строку, она очень на неё похожа, но выполняет больше функций чем cmd в Windows
- Команды в Git
- ~ - домашняя директория
- .. - родительская директория(на 1уровень выше)
- `pwd` - отобразить местоположение
- `ls` - показать содержимое папки в которой находимся
- `cd ~/project` - перейти в папку _project_ _(`cd ..` - перейти в родительскую папку, `cd /` - перейти в корневую папку)_
- `mkdir name` - создать папку с именем _name_ (можно создать структуру папок(директорий) `mkdir -p name1/name2/name3`)
- `touch name.txt` - создать папку с именем _name_ и расширением _txt_
- `cp name ~/other/` - копируем папку _name_ в папку _other_ (`cp test.txt readme.txt info.txt ~/direct` здесь 3 файла в папку direct_)
- `mv name ~/other/` - переносим папку _name в папку _other_
- `cat text.txt` - чтение файла _text.txt_
- `rm text.txt` - удалить файт _text.txt_ из текущей директории
- `rmdir other` - удалить папку _other_ (если она пустая)
- `rm -r other` - удалить папку _other_ (и всё что в ней находится)
- && - знак для ввода в 1 строке сразу нескольких команд `mkdir name && cd ~/name && touch text.txt`
- Настройка Git
- `git version` (должна отобразится версия)
- `git config --global user.name "Aleksey"` - ввод имени в конфиг
- `git config -- global user.email Aleksey@yandex.ru` ввод почты в конфиг
- `git config --list` проверка что создалось в .gitconfig
- Полезные возможности
- можно использовать стрелочки __вверх__ и __вниз__ для просмотра ранее введённых команд
- клавиша __Tab__ доведёт название (или команду)если оно есть в папке
-
Хэш - идентификатор коммита. Он содержит ссылку на коммиты. Хэш состоит из 40 символов (0-9) и Латинских букв A-F(не важно заглавных или строчный)
-
ЛОГ При вызове команды
-git log
мы увидим ссылку на коммит, Имя автора, дату создания коммита и сам коммит.Существует сокрыщщеный вывод
-git log --oneline
он нужен когда коммитов очень много сотни и тысячи, эта команды вывидет в терминале только первые несколько символов хеша каждого комита и комметраии к ним. -
HEAD - указывает на коммит который был сделан последним. А так же делает в нём запись так как он является служебным . Его часто используют если нужно передать последний коммит, то вместо его Хеша можно просто написать HEAD.
-untracked
Неотслеживаемый
Новый файл в Git помечается как untracked
. Git видит что такой файл существует, но не следит за изминениями в нём.
У таких файлов нет предыдущих вресий, зафиксированных в коммитах или через команду git add
-staged
Подготовленный
После выполнения команды git add
файл попадает в staging area, то есть в список файлов, которые войдут в коммит
В этот момент файл находится в состоянии staged.
-tracked
Отслеживаемый
Это состояние довольно широкое и является противоположностью untracked
. В него попадают файлы который уже были
зафиксированы git commit
, а так же файлы который были добавлены в staget area
с помощью git add
.
Т.е все файлы в который Git так или иначе отслеживает изменения.
-modified
Измененый
Это состояние значит, что Git сравнил содержимое файла с последней сохраненой версией и нашел отличия. Например файл был закоменчен, а потом изменен.
Для файлов staged
и modified
обычно не указывают что они так же являются tracked
потому что это подрозумевается.
После команды git add
если сделать изменения в файле, то он поменяет свой статус с staged
на modified
.
Что бы статус поменялся, после изменения надо его снова добавить командой git add
.