https://itproger.com/course/git/2
Создаем новый проект. Переходим в директорию проекта в терминале.
cd G:/OpenServer/domains/gittest.loc/
И вводим команду:
git init
Должно вывести:
Initialized empty Git repository in G:/OpenServer/domains/gittest.loc/.git/
git add path_to_file — добавление в стадию ожиданию
Добавим все файлы в стадию ожидания добавления в локальный репозиторий:
git add .
. означает, что добавили все файлы.
отдельный файл можно добавить следующей командой:
git add path_to_file
Посмотрим, что у нас с файлами:
git status
Должно вывести:
On branch master No commits yet Changes to be committed: (use "git rm --cached <file>..." to unstagе new file: www/css/style.css new file: www/index.html Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git restore <file>..." to discard changes in working directory)
Это значит, что файлы www/css/style.css и www/index.html находятся в стадии ожидания.
git rm —cached filename — удаляем файлы из стадии ожидания
Удалим файл из стадии ожидания:
git rm --cached www/index.html
Выведет:
rm 'www/index.html'
Еще раз выполнем:
git status
Выведет:
On branch master No commits yet Changes to be committed: (use "git rm --cached <file>..." to unstage) new file: www/css/style.css Untracked files: (use "git add <file>..." to include in what will be committed) www/index.html
Видно, что файл www/index.html не готов к загрузке.
git commit -m «comment» — делаем коммит
Добавим обратно все файлы:
git add .
Выполним коммит (добавим подготовленные файлы в локальный репозиторий):
git commit -m "add files html and css to local repository"
Должно вывести:
[master (root-commit) 036eb5d] add files html and css to local repository 2 file changed, 10 insertions(+) create mode 100644 www/index.html create mode 100644 www/css/style.css
Выполним:
git status
Должно вывести:
nothing added to commit but untracked files present (use "git add" to track)
Это значит, что все файлы, которые обновлены и подготовлены, закинуты в локальное хранилище.
Изменяем файлы
Изменим файл www/index.html и вызовем:
git status
Должны получить:
On branch master Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git restore <file>..." to discard changes in working directory) modified: www/index.html
То есть файл изменен, но не подготовлен к коммиту. Подготовим файл к коммиту:
git add www/index.html
Проверим еще раз git status и получим такое:
On branch master Changes to be committed: (use "git restore --staged <file>..." to unstage) modified: www/index.html
Значит файл www/index.html готов к коммиту. Закоммитем его:
git commit -m "add chages to file www/index.html"
Получим:
[master 62d2774] add chages to file www/index.html 1 file changed, 1 insertion(+), 1 deletion(-)
То есть мы загрузили файл в локальное хранилище.
git add *.html — загрузка файлов с параметрами
Чтобы загрузить, допустим только html файлы нужно:
git add *.html
Все файлы с расширением .html внутри папки css :
git add css/*.html
Все файлы с расширением html, которые находятся в папке css и во всех дочерних папках:
git add css/**/*.html
Все файлы из папки css, кроме файла style.css :
git add !css/style.css
git log — цепочка изменений
Чтобы увидеть хронологию изменений нужно выполнить команду:
git log
Выводит:
commit 62d2774b368e62ea79e4c7720da3bf813ac45b50 (HEAD -> master) Author: admin <[email protected]> Date: Mon Oct 5 14:22:11 2020 +0300 add chages to file www/index.html commit e021fbf60a7fcf22af344e56b562b43c1c57e43e Author: admin <[email protected]> Date: Sun Oct 4 22:15:11 2020 +0300 add commit 9164ea7d2272ca435cd7483e5b0ed3e27d9b4400 Author: admin <[email protected]> Date: Sun Oct 4 22:11:34 2020 +0300 Date: Sun Oct 4 22:11:34 2020 +0300 Date: Sun Oct 4 22:11:34 2020 +0300 add files again commit 036eb5d5c59d5a94d5b567bd715911c894ec55a5 Author: admin <[email protected]> Date: Sun Oct 4 22:06:11 2020 +0300 add files html and css to local repository (END)
Выйти из git log
По-умолчанию Git посылает вывод своих комманд на программу-pager. По-умолчанию это программа less. Выйти из less можно пятью способами: q,Q, :q, :Q и ZZ.
git log —oneline — просмотр изменений в одну строку
Команда:
git log --oneline
Выведет:
62d2774 (HEAD -> master) add chages to file www/index.html e021fbf add 9164ea7 add files again 036eb5d add files html and css to local repository
Файл .gitignore
В файле .gitignore можно прописать файлы или «маски» файлов, которые будут игнорироваться Гитом:
css/style.css index.html css/**/*.js js/
Мы запретили добавлять файлы css/style.css и index.html, все файлы .js из папки css и всю папку js со всеми файлами в ней.
Но если папка уже в локальном хранилище (репозитории), то ее нужно предварительно исключить оттуда. Допустим:
git rm -r --cached js/temp