Skip to content

Dizelars/git_skill_upp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 

Repository files navigation

                                                .-ossyyyysso-.         yyyyyy,         oooooo,
                                             .ssyyyyyyyyyyyyyyss:      yyyyyy,         oooooo,
                                           .+yyyyyyyyyyyyyyyyyyyy:.    yyyyyy,         oooooo,
                                          .yyyyyyyys.````.syyyyyyy:.   yyyyyy,         oooooo,
                                         .yyyyyyy:          +yyyyyy:   yyyyyy,         oooooo,
                                         oyyyyyy-            ......`   yyyyyy,         oooooo,
                                         yyyyyys                       yyyyyy,  oooooooooooooooooooo
                                        :yyyyyy+       yyyyyyyyyyyy,   yyyyyy,  oooooooooooooooooooo
                                        .yyyyyyo       yyyyyyyyyyyy,   yyyyyy,  oooooooooooooooooooo
                                         yyyyyyy`      ``````.syyyy,   yyyyyy,         oooooo,``````
                                         :yyyyyys.          .:yyyyy,   yyyyyy,         oooooo,
                                          :yyyyyyy:.      .:oyyyyyy,   yyyyyy,         oooooo,
                                           :yyyyyyyyyyyyyyyyyyyyyyy,   yyyyyy,         oooooo,
                                            `:syyyyyyyyyyyyyy: yyyy,   yyyyyy,         oooooo,
                                               `:+ossyyssoo-`  yyyy,   yyyyyy,         oooooo,


Полезные команды git.

Примечания по использованию справки:

1. В скобках <...> указано, что необходимо прописать (сами скобки НЕ пишем)


Команды в PowerShell:

1. cd <путь файла>                               (Перейти в нужную папку)
2. cd ..                                         (Подняться на уровень выше)
3. dir                                           (Посмотреть находящиеся файлы и папки по данному пути)
4. mkdir <имя папки>                             (Создать папку)
5. ni <имя файла>                                (Создать файл)
6. del <имя файла>                               (Удалить файл)
7. rmdir <имя папки>                             (Удалить папку)
8. cls                                           (Очистить консоль)


Инициализация проекта:

1. git config --global user.name "Your name"     (Указать свое имя пользователя)
2. git config --global user.email "Your email"   (Указать свою электронную почту)
3. cat ~/.gitconfig                              (Посмотреть добавленую выше информацию в файл gitconfig)
4. git config --list                             (Посмотреть более подробную информацию в .gitconfig)
5. git init                                      (Инициализация проекта в папке)


Работа с файлами:

1. git status                                    (Проверить статус файлов)
2. git status --ignored                          (Посмотреть какие из текущих файлов, добавлены в .gitignore)
3. git add <имя файла>                           (Добавить конкретный файл в список отслеживания)
4. git add .                                     (Добавить все файлы, находящиеся в папке, в список отслеживания)
5. git commit -m"Ваше сообщение"                 (Сохранить добавленные файлы в отслеживаемые и описать внесенные изменения)
6. git show <хэш>                                (Перейти к конкретному коммиту и посмотреть изменения)


Просмотр истории коммитов:

1. git log                                       (Посмотреть все сделанные коммиты в текущем проекте)
2. git log -1                                    (Посмотреть последний коммит)
3. git log --oneline                             (Посмотреть историю коммитов в кратком варианте)
4. git log --oneline --all                       (Посмотреть историю коммитов всех веток)
5. git log --oneline --all -graph                (Посмотреть историю коммитов всех веток с ответвлениями)
6. q                                             (Выйти из git log)


Удаление/Изменение файла:

1. git checkout <путь/имя файла>                 (Если мы удилили/изменили файл, и НЕ успели его закоммитить, то можно его восстановить данной командой)
2. git checkout <хэш>                            (Полностью вернуть все файлы до состоянния в указанном коммите)
3. git checkout <хэш> <имя файла>                (Когда мы хотим откатить определенный файл до состояния в другом коммите (при этом, он уже будет в отслеживаемых))
4. git diff --staged <имя файла>                 (Посмотреть последние изменения конкретного файла)
5. git reset HEAD <путь\имя файла>               (Убрать конкретный файл из отслеживаемых)


Работа со своими коммитами:

1. git commit --amend -m "измененный коммит"     (Поменять сообщение последнего коммита)
2. git rm <путь\имя файла>                       (Убрать файл из последнего коммита (он останется в отслеживаемых), при этом остальные файлы в этом коммите, останутся)
3. git commit --amend --no-edit                  (Убранный файл из последнего коммита, удаляем из отслеживаемых и оставляем все остальные файлы с тем же тектом коммита)
4. git rm --cached <имя файла>                   (Убрать файл из коммита, но оставить его в дереве документа(останется в индексе), чтобы продолжить работу над ним)


Работа с ветками:

1. git checkout <хэш> -b <имя ветки>             (Перейти к определенному коммиту и создать новую ветку)
2. git checkout <имя ветки>                      (Перейти в конкретную ветку)
3. git checkout -b <имя ветки>                   (Создать новую ветку после последнего коммита)
4. git merge <имя ветки> -m <имя ветки>          (Сливаем ответвленную ветку (первая) с основной веткой (вторая))
5. git merge <имя ветки>                         (Сливает указанную ветку с текущей)
6. git branch -d <локальная ветка>               (Удалить локальную ветку)
7. git push origin -d <удаленная ветка>          (Удалить ветку на сервере GitHub)


Работа с GitHub:

1. git clone <SSH репозитория>                   (Клонируем документы из репозитория в свою локальную папку)
2. git remove -v                                 (Узнать адрес репозитория, к которому мы подключены)
3. git push origin <ветка>                       (Добавить новый коммит в удаленный репозиторий)
4. git push origin <ветка>:<новое название>      (Поменять название ветки в удаленном репозитории. Указываем первое название, затем то, на которое нужно изменить)
5. git push origin :<ветка>                      (Удаляем указанную ветку из удаленного репозитория)
6. git branch -m <ветка>                         (Меняем название локальной ветки(которую удаляли с удаленного репозитория) на правильное)
7. git pull origin <ветка>                       (Загрузить данные ветки с удаленного репозитория в локальную папку)
8. git pull origin main --rebase                 (Слить локальные файлы с файлами репозитория)
9. git fetch origin                              (Получить из удаленного репозитория все ветки и коммиты)
10. git push --set-upstream origin <ветка>       (Обьединяет удаленную и локальную ветки, чтобы заливать файлы на GitHub командой git push)
11. git push                                     (Залить все файлы на удаленный репозиторий (работает, если выполнена команда выше))
12. git branch -vv                               (Узнать как\какие локальные ветки связаны с удаленными, и какие есть ветки на проекте)
13. git remote add <наше название> <SSH>         (Задать собственное имя для удаленного репозитория, чтобы постоянно не писать SSH-адрес)
14. git config --global --add safe.directory <путь к папке>     (Если Git обнаруживает сомнительное владение в репозитории)


Сквош коммитов (Объединение нескольких коммитов, в один):

1. git cherry -v <ветка>                         (Посмотреть, как текущая ветка отличается от основной ветки)
2. git cherry -v <ветка> | wc -1                 (Посмотреть колличество коммитов в указанной ветке)
3. git config --global core.editor "название редактора кода"       (Добавить свой редактор кода в git, чтобы объединять коммиты)
4. git rebase -i HEAD~4                          (Обьединить определенное количество(задается цифрой, ппосле знака тильда "~") коммитов в один, далее редактируем все необходимое в своем редакторе кода, который добавляли командой выше)
5. git push --force                              (Перезаписать на удаленном репозитории то самое количество коммитов, которые мы поменяли в один. (ВНИМАНИЕ: Будьте аккуратны, так как данная команда перезаписывает коммиты, даже в том случае, если есть конфликты, она их не покажет, а просто пропустит))



                                                                    ,...                   ,,
            `7MM"""YMM  `7MN.   `7MF'`7MM"""Yb.                   .d' ""      .g8"""bgd    db    mm
              MM    `7    MMN.    M    MM    `Yb.                 dM`       .dP'     `M          MM
              MM   d      M YMb   M    MM     `Mb      ,pW"Wq.   mMMmm      dM'       `  `7MM  mmMMmm
              MMmmMM      M  `MN. M    MM      MM     6W'   `Wb   MM        MM             MM    MM
              MM   Y  ,   M   `MM.M    MM     ,MP     8M     M8   MM        MM.    `7MMF'  MM    MM
              MM     ,M   M     YMM    MM    ,dP'     YA.   ,A9   MM        `Mb.     MM    MM    MM
            .JMMmmmmMMM .JML.    YM  .JMMmmmdP'        `Ybmd9'  .JMML.        `"bmmmdPY  .JMML.  `Mbmo
                                                                                               ,,
                                                                                             `7MM
                                                                                               MM
             ,p6"bo   ,pW"Wq.  `7MMpMMMb.pMMMb.  `7MMpMMMb.pMMMb.   ,6"Yb.  `7MMpMMMb.    ,M""bMM  ,pP"Ybd
            6M'  OO  6W'   `Wb   MM    MM    MM    MM    MM    MM  8)   MM    MM    MM  ,AP    MM  8I   `"
            8M       8M     M8   MM    MM    MM    MM    MM    MM   ,pm9MM    MM    MM  8MI    MM  `YMMMa.
            YM.    , YA.   ,A9   MM    MM    MM    MM    MM    MM  8M   MM    MM    MM  `Mb    MM  L.   I8
             YMbmd'   `Ybmd9'  .JMML  JMML  JMML..JMML  JMML  JMML.`Moo9^Yo..JMML  JMML. `Wbmd"MML.M9mmmP'

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published