it-blog.club
Откатываем изменения на сервере через git clean

Откатываем изменения на сервере через git clean

Заходим на сервер по SSH, с целью слить новые изменения из git. Набираем git status и видим, что кто-то, а может и вы сами не закомитил свои прошлые изменения, которые были внесены в обход системы контроля версий.

В такой ситуации git pull может у вас не пройти, по причине совпадения изменённых фалов и файлов, которые должны придти. В этом случае git вам сообщит, что нужно сделать либо git commit, либо удалить эти изменения.

Уточняем у коллег, нужны ли всё ещё эти правки на прямую залитые на сервер или уже нет. Предупреждаем чтобы, тот, кто их внес, перенёс их к себе на локальную копию.

Далее нам необходимо сбросить и эти изменения, чтобы спокойно сделать pull.

Вручную откатывать изменения в каждой файле, соизмеримо с выдёргиванием волос на голове пинцетом, по одному волосу. Времени займёт столько же, и будет так же больно. Да и, в конце концов, не забываем, что гит так же чувствителен к пробелам и отступам, и, не попав в один пробел, ругань на изменение файла останется.

У GIT’a есть отличные инструменты, которые вам помогут в этом деле.

По сути двумя командами можно сбросить ВСЕ изменения до последнего pull или commit.

Первое что вам необходимо сделать, так это вызвать вот такую команду


git reset --hard HEAD

Обращаем внимание, что перед hard именно 2 знака тире.

Для проверки набираем git status, и мы увидим, что остались только не отслеживаемые файлы, но с которыми тоже надо что-то сделать. Для этого воспользуемся следующей командой:


git clean -fd

В этом случае у нас откатятся остальные изменения и, после использования git status, мы увидим, что наш репозиторий чист.

Теперь можно спокойно делать git pull.



it-blog.club 62
Автор: Ярослав Хмель


Если Вам понравилась статья, то можете поддержать блог переведя N сумму на кофе авторам или оплату хостинга!
В любом случае спасибо! А так же не забывайте про группу в ВК
ПОИСК ПО САЙТУ
Поддержать