Last active
October 10, 2020 09:29
-
-
Save YakovSPb/d48dab0fa8091b322a366cac08d47300 to your computer and use it in GitHub Desktop.
github
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Php Storm | |
======================== | |
1. Выбираем VHS > Enable Version COntrol Integration | |
2. В корне папки проекта создамем файл .gitignore и пишем в нем .idea (исключения) | |
3. Добавляем всю папку в git crl+alt+a (файлы становятся зелеными) | |
4. Создаем репозиторий VHS > Import intro Version Control > Share project on GitHub | |
Sublie Text | |
===================== | |
Устанавливаем пакет Sublime Text Git | |
1. Создаем новый репозиторий в GitHub/Bitbucket. | |
2. Создаем папку проекта с файлом .gitignore (в нем пишем форматы файлов и пути, которые не должны отслеживаться системой контроля версий: всякие логи *.log, временные файлы *.tmp, пути /trash и т.п.) | |
3. В терминале находясь в данной директории инициализируем git. | |
git init | |
4. В ST пишем код и сохраняем в этой директории. | |
5. В терминале смотрим изменения, добавляем и ставим в очередь на коммит в git все созданные файлы/директории | |
git status | |
git add -A | |
6. Делаем коммит-мерж | |
git commit -m 'Initial commit' | |
7. Добавляем связь с удаленным репозиторием | |
git remote add origin https://github.com/YakovSPb/2kovsha | |
git remote -v | |
8. Пушим локальные изменения в удаленный репозиторий | |
git push origin master | |
Далее в процессе работы повторяем пункты 4-8. | |
Если нужно затянуть новый удаленный репозиторий | |
git clone https://github.com/repo | |
ПЕРЕЗАПИЛИТЬ репозиторий | |
git remote set-url origin https:// | |
Команды | |
========================== | |
Установка Имени и почты | |
git config --global user.name "YakovSPb" | |
git config --global user.email yakov_dux@bk.ru | |
Создание копии | |
========================== | |
1. Заходим на репозитория проекта и нажимаем Fork | |
2. Нажимаем кнопку "Clone or download" и копируем ссылку на проект | |
3. Заходим в папку проекта и открываем командрую строку пишем | |
git clone https://github.com/aleksandr-staetskiy/crop-media.git | |
4. Делаем изменение | |
5. git status | |
Смотрим изменения. Modified - измененные файлы. Untrackecd - неотслеживаемые файлы | |
6. Довляем файлы в index | |
git add my.html | |
7. Или добавляем все изменения | |
git add -A | |
8. Комментируем | |
git commit | |
9. Первую строку добавляем обязательно | |
10. Отправляем | |
git push | |
ОСНОВНЫЙ КОМАНДЫ | |
======== | |
1. Настройка git для комментов | |
git config --global user.name "Yakov Kondratev" | |
git config --global user.email "prospektpro673@gmail.com" | |
2. В папке проекта инициализируем git | |
git init | |
3. Добавить файл в коммит | |
git add text.txt | |
4. Добавить коммит | |
git commit -m "First Commit" | |
5. Просмотр активных коммитов | |
gitk | |
6. Текущее состояние нашего репозитория | |
git status | |
7. Индексация файлов | |
git add index.txt // добавить файл | |
git add * //добавить все файлы | |
git add . //добавить все файлы только в этой директорие | |
=== | |
8. История коммитов | |
git log | |
q // выйти из коммитов | |
git log --pretty=oneline // удобынй вывод в одну линию | |
git log --pretty=oneline --max-count=3 //последние три коммита | |
git log --pretty=oneline --all // вывести все коммиты в одну линию | |
git log --pretty=oneline --author="Yakov" //вывод по автору | |
git log --pretty=format:"%h - %s : %ad [ %an ]" --date=short //хеш коммит дата юзер | |
9. Git checkout | |
git checkout 6298b8a // переход к точке 6298b8a | |
ls //посмотреть файлы | |
git checkout master // вернуть файлы, которые были на ветке | |
10. Отменить индексацию | |
git reset HEAD text.txt // сбористь индексацию | |
git ckeckout text.txt // вернуть к начальному состоянию файл | |
git rm --cached * //сбросить индексацию всех файлов | |
11. Отмена коммита | |
git revert HEAD --no-edit // К последнему коммиту | |
git revert 6298b8ab558a2f39e92fc4336fbe4c2e76d9903f --no--edit //вернуть к хешу | |
12. Решение конфликтов | |
git revert --about // отмена измениния | |
git add index.html// добавляем файл, которого не было в индексе в этом хеше | |
13. Ветки | |
git branch //увидеть все ветки | |
git checkout -b newbranch // создание новой ветки | |
git checkout dev // перейти на ветку dev | |
14. Слияние веток и решение конфликтов слияния | |
git merge dev //сливает ветку dev с актвиной, лучше использовать с публичными ветками | |
При конфликте изменям файл, добавляем в индекс и коммитим без коммента git commit | |
а в конце предложенного коммита пишем :wq | |
15. git rebase // не стоит сливать с веткой где все работают | |
git rebase master // сливает тоже коммиты (рекомендуется для сливание своих локальных веток) где вы только работаете | |
16. git clone //качает копию репозитория | |
git clone https://github.com/YakovSPb/MyTaskApp.gi | |
17. добавить репозитория | |
git remote add origin https://github.com/YakovSPb/git-sample.git | |
git push -u origin master // Закачивает файлы на репозиторий | |
18. git push // загружаем изменения | |
git push origin newbranch // загружаем новую ветку | |
19. git pull - вытянуть изменения с github | |
git pull origin master // получить изменения с основной ветки | |
git pull --rebase origin master // вытянет с удаленного репозитория и поверх его наложит локальные изменения | |
20. Origin и stash | |
git stash // откладываются изменения | |
git pull --rebase origin master // вытаскиваем изменения | |
git stash pop //достаем отложенные изменения и удаляем из корзины | |
git stash list //посмотреть корзину отложенныз изменений | |
git stash show //посмотреть последние изменение | |
git stash apply //применить последнее изменение | |
git stash drop //удаляет полследние изменение из корзины | |
git stash clear //убрать мусор из корзины(аккуратно использовать) | |
git remote //посмотреть удаленные сервера | |
ОСНОВНЫЕ ОШИБКИ | |
1. Если закомитиль, но за был добавить файл | |
add забытыйфайл | |
git commit --amend | |
git commit --amend //просто изменить коммит | |
2. Восстановить файл, который поменял (если уже добавил в индексацию, то отмени) | |
checkout имя файла | |
3. Восстановить все файлы к последнему коммиту | |
git reset --hard | |
4. Откатить коммит по хешу (когда первый коммит неправильный, а второй правильный) | |
git revert adc104fbce8aaa6f4e1097ce76f17d3f988e0158 | |
4. Откатить до состояние несколько коммитов назад | |
git reset --hard 06be8aaec004fc0dfd9a7ec5820c31f9674ff64c |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment