GitHub Desktop: обзор и первая настройка
Самая короткая инструкция о том, как сохранить файлы в GitHub и ничего не сломать. И самое главное — никакой консоли, всё через окошки и с помощью мышки. Для этого используем GitHub Desktop.
Внимание! GitHub Desktop не работает на Windows 7×32, поэтому если у вас эта версия системы, обновитесь до Windows 10 или воспользуйтесь программой GitKraken.
В этой статье идёт рассказ о системах контроля версий. Если вы совсем ничего о них не знаете, прочитайте статьи «Словарь терминов для Git и GitHub» и «Введение в системы контроля версий», чтобы понять терминологию и разобраться, зачем мы вообще это делаем.
Регистрация и вход
После первого входа в GitHub Desktop вас попросят ввести ваши логин и пароль от GitHub.com. После этого у вас появится доступ ко всем репозиториям, сохранённым в профиле.
Создание репозитория
Если вы никогда не пользовались гитхабом, нужно будет создать репозиторий для работы над проектом. На главном экране GitHub Desktop выберите пункт «Create a New Repository on your hard drive».

Нужно будет ввести название репозитория, его описание и выбрать папку на компьютере, куда будут сохраняться файлы.

После этого нажимаем на Create repository, ждём несколько секунд и готово — на компьютере появилась папка, которой можно пользоваться для разработки вашего проекта.
Клонирование репозитория
Если у вас уже какой-нибудь репозиторий на Гитхабе, его можно клонировать. Клонировать — это скачать все файлы к себе на компьютер, чтобы можно было их изменять и потом загружать обратно.
Выбираем Add -> Clone Repository.

В открывшемся окне выбираем один из имеющихся репозиториев. В данном случае он называется zaverstai , но у вас может быть любой другой.

После этого файлы репозитория начнут скачиваться — если их много, то это займет некоторое время.

Работа с репозиторием. Меняем файлы и сохраняем обратно
Вне зависимости от того, создали вы репозиторий или клонировали его, так выглядит GitHub Desktop с открытым репозиторием, в котором мы пока ничего не меняли.

Слева — поле для измененных файлов, справа — служебная информация. Слева снизу — поле для коммитов.
Если не усложнять, то склонированный репозиторий это просто каталог на компьютере. Можно нажать Show in Finder на Mac или Show in Explorer в Windows и откроется папка, где лежат все файлы, которые есть в репозитории.

Давайте добавим какой-нибудь файл. Например, я добавил в локальный репозиторий (скопировал в папку) файл index.html, который взял отсюда. Вы можете загрузить файл с кодом вашего проекта или изменить уже существующий.
Сразу после добавления или изменения файла в окне GitHub Desktop будет видно, что изменилось — если мы добавили целый новый файл, то все строчки будут с плюсиками и зелёные. Это значит, что они были добавлены в файл и GitHub Desktop раньше их никогда не видел.

Загружаем новый репозиторий на GitHub
Если вы не создавали новый репозиторий, а склонировали старый, то можете пропустить этот пункт.
После того, как мы добавили какой-то код в свежесозданный репозиторий, нужно сделать коммит, то есть зафиксировать все сохранённые изменения и дать им название. Текст должен быть лаконичным и в то же время сообщать о том, что делает коммит. Например, «добавляет имя наставника в Readme», «вводит функцию сортировки изображений», «правит ошибку в поиске городов на карте». Вводим имя жмём большую синюю кнопку «Commit to main»

Изменения, которые мы внесли и сохранили, пока локальны. Их нужно послать на GitHub. Чтобы опубликовать свежесозданный репозиторий на GitHub, нажмите Publish repository.

Появится подтверждение о публикации репозитория — проверяем название и описание, если нужно, ставим галочку о том, что код приватный, и публикуем.

Готово — после этого репозиторий появится в вашем профиле на GitHub. com.
Добавляем код и коммитим изменения
Репозиторий создан и загружен на GitHub, теперь нужно добавить немного кода.
Когда вы допишете код в файлы, которые находятся в репозитории, вы сможете просмотреть все их изменения в окне GitHub Desktop. Вот здесь, например, мы изменили «второй» на «третий» в тексте страницы — и изменения сразу видны, можно проверить, что всё исправленное будет загружено.

Дальше действуем по проверенной схеме — коммитим изменения.

В центре главного экрана появится предложение запушить коммит в удалённый репозиторий. Соглашаемся и жмём Push origin.

Готово! Теперь, если зайти на GitHub.com, в наш репозиторий, увидим изменённый файл, который мы только что отправили.

Всё получилось — теперь вы можете создать или склонировать репозиторий, добавить туда файлы, опубликовать всё это на GitHub.com, не прикасаясь к консоли.
Мы поработали только с основной веткой репозитория. Если вы хотите разобраться, как создавать новые ветки и добавлять их в основную ветку, прочитайте статью «Работа с git через консоль».
«Доктайп» — журнал о фронтенде. Читайте, слушайте и учитесь с нами.
Читать дальше

5 частых ошибок при работе с Git
Git — это важный и довольной понятный инструмент для контроля версий в разработке программного обеспечения, но иногда он может выдавать ошибки, которые сбивают с толку. Если вы столкнулись с одной из этих ошибок, попробуйте наше решение.
- 27 августа 2023

Работа с Git через консоль
Задача: форкнуть репозиторий в GitHub, создать ветку и работать с кодом.
Сразу появляется много вопросов — что такое GitHub, какие для этого нужны команды, зачем, а главное, как всем этим пользоваться? Давайте разберёмся.
Когда мы пишем код, мы постоянно туда что-то добавляем, удаляем, и иногда всё может ломаться. Поэтому перед любыми изменениями стоит сделать копию проекта. Если собирать проекты в папки с именами проект1 , проект1_финал и проект2_доделка , вы быстро запутаетесь и точно что-нибудь потеряете. Поэтому для работы с кодом используют системы контроля версий.
Система контроля версий — программа, которая хранит разные версии одного документа, позволяет переключаться между ними, вносить и отслеживать изменения. Таких систем много и все они работают по принципу компьютерной игры, где вы можете вернуться к месту сохранения, если что-то пошло не так.
Git — самая популярная система контроля версий. С Git можно работать через командную строку (или терминал). В каждой системе своя встроенная программа для работы с командной строкой. В Windows это PowerShell или cmd, а в Linux или macOS — Terminal. Вместо встроенных программ можно использовать любую другую — например, Git Bash в Windows или iTerm2 для macOS.
Как работает терминал: мы вводим команду и получаем ответ компьютера — или всё получилось, или где-то ошибка, или нужно ввести что-то ещё — например, пароль. Поэтому большая часть этой инструкции состоит из команд для терминала. Сначала будет непривычно, но вам понравится.
Но давайте по порядку — установим Git на компьютер.
- 7 августа 2023

Как склеить коммиты и зачем это нужно
Когда вы открываете пулреквест и ваш код смотрят и комментируют другие, бывает нужно что-то исправить. Обычно такие изменения мы комментируем сообщением вроде «Увеличил шрифт на 2px » или «Поменял оттенок фона в шапке». Такие маленькие изменения интересны, только пока они в пулреквесте. Ревьювер (человек, который смотрит ваш код), может легко узнать, что и когда вы изменили, а не читать весь diff заново, а вы можете легко откатить коммит, если он не нужен. Но когда приходит время вливать пулреквест, эти маленькие коммиты теряют свою ценность. Поэтому лучше их склеить в один.
- 14 июня 2023

Основные команды для работы с Git
Работа с Git через терминал — это обязательная часть практики фронтендера. Однако для начинающих разработчиков этот инструмент может показаться сложным. Чтобы вам было проще учиться, мы собрали основные команды для работы с Git.
☝ В некоторых командах мы будем писать URL-адрес удалённого репозитория и название проекта в квадратных скобках, вот так — [ссылка на удалённый репозиторий] . Мы делаем это только для наглядности. Вам квадратные скобки ставить не нужно.
- 22 февраля 2023

Как бесплатно залить сайт на GitHub Pages
Допустим, вы сделали какой-то проект, например, собрали себе портфолио по шаблону, и теперь хотите выложить его в интернет. Если вы использовали только HTML и CSS, то необязательно платить деньги, чтобы загрузить сайт куда-то. Вы можете бесплатно выложить сайт на сервис GitHub Pages. Всё, что нужно — аккаунт на Гитхабе.
- 29 ноября 2022

Регистрация на GitHub
Создание нового аккаунта на GitHub состоит всего из 10 шагов — и вся регистрация занимает меньше пяти минут.
Обратите внимания, что интерфейс Гитхаба регулярно меняется, так что внешне он может отличаться, когда вы читаете эту статью.
Начало регистрации. Так выглядит главный экран Гитхаба, когда вы не зарегистрированы. Главное, что вам нужно заметить — большое поле для ввода почты и зелёная кнопка. Вводите свой адрес и переходите на следующий шаг.
Ввод почты. На следующем шаге начинается регистрация. Подтвердите свою почту с прошлого шага и нажмите Continue (Продолжить).
Пароль. Придумайте сложный пароль, чтобы его никто не взломал. Например, Гитхаб просит, чтобы в пароле было не меньше 15 символов или 8 символов, но тогда должны быть и латинские буквы, и цифры.
Имя профиля. Теперь выберите имя вашего профиля — оно будет использоваться в интерфейсе, в коммитах и комментариях. То есть именно так вас будет видеть любой пользователь Гитхаба. Для разработчика Гитхаб вместо визитки, так что выбирайте что-нибудь приличное, лучше, если ник будет совпадать с вашими никнеймами на других сайтах.
Если имя недоступно, Гитхаб вам об этом скажет. А если доступно — жмите Continue.
Рассылки. Дальше Гитхаб спросит, хотите ли вы подписаться на рассылку об обновлениях. Впечатайте латинскую У, если хотите, или n, если письма вам не нужны. Готовы спорить, мы знаем, что вы выберете.
Капча, чтобы проверить, что вы не робот. Нам при регистрации пришлось два раза выбрать спиральную галактику — не сильно сложно. А если вы робот — не причиняйте вред человеку своим действием или бездействием.
Подтверждение почты. После капчи вам придёт письмо с кодом на почту. Введите его на следующей странице.
Вот здесь. Главное — не ошибайтесь.
Общая информация о вас и вашей команде. Если вы регистрируете аккаунт для себя, выбирайте Just me. Второй пункт — студент вы или учитель. Выбирайте «Студент», если вы не учитель.
Интересы. Дальше Гитхаб спросит вас об интересах — то есть о том, зачем вы регистрируете аккаунт. Из вариантов:
- Совместная разработка и код ревью.
- Автоматизация. CI/CD, API и другие админские вещи.
- Безопасность. Двухфакторная аутентификация, ревью, сканирование кода и списки зависимостей.
- Приложения. Выбирайте, если будете использовать GitHub Mobile, CLI, Desktop.
- Управление проектами. Проекты, метки, ишьи, вики и другие управленческие дела.
- Управление командами. Организации, приглашения, роли, домены.
- Сообщество. Выбирайте, если Гитхаб интересен вам как соцсеть.
Вы можете выбрать несколько пунктов или пропустить и не указывать ничего, для этого пролистайте страницу вниз для кнопки Skip customization.
Выбор тарифа. На выбор бесплатный тариф или платный GitHub Pro. Практика показывает, что для большинства личных проектов хватит бесплатного тарифа. В сентябре 2022 в него входили:
- Безлимитное количество репозиториев.
- 2000 минут CI/CD в месяц.
- 500 мегабайт места в хранилище пакетов.
- Поддержка сообщества.
Выбор тоже можно пропустить, тогда у вас будет бесплатный тариф.
Всё готово. Теперь у вас есть аккаунт. Можете создать репозиторий и работать с ним, или склонировать чужой. А для работы у вас есть несколько удобных вариантов:
- 28 сентября 2022

Работа с Git в Visual Studio Code
Если вы вёрстаете сайты или пишете код в редакторе Visual Studio Code, то Git за пять минут настраивается прямо внутри редактора. Не нужно запоминать команды для консоли, не нужно тыкать в лишние приложения.
Следуйте инструкции и всё получится.
- 16 сентября 2022

Markdown за 5 минут
Маркдаун, он же markdown — удобный и быстрый способ разметки текста. Маркдаун используют, если недоступен HTML, а текст нужно сделать читаемым и хотя бы немного размеченным (заголовки, списки, картинки, ссылки).
Главный пример использования маркдауна, с которым мы часто сталкиваемся — файлы readme.md , которые есть в каждом репозитории на Гитхабе. md в имени файла это как раз сокращение от markdown.
Другой частый пример — сообщения в мессенджерах. Можно поставить звёздочки вокруг текста в Телеграме, и текст станет полужирным.
Версии маркдауна отличаются, поэтому перепроверьте, какую вы используете.
- 5 октября 2021

Шпаргалка по Git. Решение основных проблем
Поговорим о решении проблем с Git.
- 11 декабря 2020

Полезные команды для работы с Git
Работа с Git через терминал — это обязательная часть практики каждого современного фронтенд-специалиста. Однако, для начинающих это может показаться сложным. Чтобы упростить процесс обучения, мы собрали для вас все самые необходимые команды, которые пригодятся в работе с Git на первое время.
- 1 января 2020
Как откатить изменения в GIT?
С гитом знаком недавно. Использую GitHub Desktop, Sourcetree, SmartGit.
Создал «пустой-gitignore-readme» репозиторий на битбакет. Клонировал его на компьютер (указал папку).
В этой папке создал проект.
В работе использую одну ветку — мастер. Изменяю проект, делаю коммит и пушу всё на битбакет. Все хорошо, без ошибок.
Но вот, после пары изменений и коммитов, проект перестал нормально работать. Нужно откатить изменения.
Как можно откатить изменения к предыдущему коммиту и затереть все последующие?
Т.е. всё, что было после указанного коммита удалить везде — локально и на битбакете?
PS
По началу вроде получалось Reverse commit, потом пошли ошибки, требования закоммитить что то ещё, требования разрешить конфликт. И всё это в коммитах выше. А мне они не нужны, мне надо просто откатится к точке/коммиту ранее и стереть всё что выше т.к. там всё с ошибками.
- Вопрос задан более трёх лет назад
- 1720 просмотров
1 комментарий
Простой 1 комментарий
GitHub Desktop. Откат изменений
Решил начать работать с системой контроля версий. Для того чтоб просто попробовать как там что работает скачал GitHub Desktop для Windows. Создал на компьютере папку с 5 текстовыми файлами и присоединил гит. Начал в них писать разный текст и коммитить. Получилось 4 коммита. После этого решил вернуть все файлы в состояние в котором они были на момент первого коммита. Для этого выбрал второй коммит и нажал кнопку Revert. Но увидел сообщение об ошибке. Не пойму в чем проблема, и в интернете ничего не нашел.
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Desktop GitHub в Linux
Не получается залогиниться. Создал сообщение с описанием.
Откат изменений
Дело в том что когда перезагружал компьютер выскочило обновление и всё установило. После этого.
Откат локальных изменений
Здравствуйте! Дело было так: Сделал изменения в локальной версии и забыл зафиксировать. Потом с.
Откат изменений в документе
Всем привет! есть некий процесс обработки документов, предполагающий их (этих документов) правку.
Как откатить проект до версии на GitHub?
Как откатить проект до версии на GitHub? На GitHub лежит проект, я у себя на компе сделал изменения и даже не коммитил, после понял что лучше этих изменений не делать и хочу вернуть все как было на момент последнего коммита.
git fetch , git pull пробовал, git clone тоже пробовал, все не то.
Отслеживать
51.6k 200 200 золотых знаков 59 59 серебряных знаков 242 242 бронзовых знака
задан 30 мар 2018 в 9:14
Aleksandr Sergeevich Aleksandr Sergeevich
335 2 2 серебряных знака 12 12 бронзовых знаков
git revert —continue пробовали? Но вообще странно, что git clone вам не помог, ведь там создаётся новая папка с исходниками, которые лежат удалённо.
30 мар 2018 в 9:24
чтобы git revert воспользоваться, я так полагаю надо сперва коммит сделать, а потом откатить его?
30 мар 2018 в 9:43
git clone копирует только те файлы, что есть на git Hub, а у меня на компе еще часть в игноре, в итоге после git clone часть файлов не досчитался
30 мар 2018 в 9:45
Блин, да, в общем я запутался и оказался неправ, в Intellij IDEA есть revert, который позволяет откатить файлы на состояние коммита, поэтому и полез искать по гиту его. Ответ с reset —hard верный. По поводу clone, я думал вы в другую папку пытались склонировать.
30 мар 2018 в 9:47
Советую использовать GitExtension. Он удобнее классического Git GUI.
30 мар 2018 в 10:01
5 ответов 5
Сортировка: Сброс на вариант по умолчанию
git reset --hard @
Отслеживать
ответ дан 30 мар 2018 в 9:36
1,567 6 6 серебряных знаков 8 8 бронзовых знаков
Коммита не было, ветка никуда не уехала, reset некуда сделать
30 мар 2018 в 9:37
Такой вариант тоже рабоатет
30 мар 2018 в 9:38
Автор не говорил, что создавал новую ветку. Судя по этому, он находится в мастере, и reset будет сделан до головного коммита мастера.
30 мар 2018 в 9:38
А, ну хотя да, согласен
30 мар 2018 в 9:42
«Автор не говорил, что создавал новую ветку», но он и не говорил, что ее не создал. Обычно новые изменения делают не в master.
– user282693
2 апр 2018 в 12:38
Я в подобных случаях делаю git reset —hard HEAD — это практически то же самое, что и ответ @АлександрГрушко.
Существующие файлы, о которых гит не знает, вы не удалите таким способом, но тут уже никак, разве что вы сами удалите эти файлы. (@D-side подсказывает, что можно воспользоваться командой git clean -df – удаляет все файлы в папке, которые не относятся к проекту и не сохранены в репозитории)
Альтернативно, можете забрать изменения в карман и тут же его опустошить:
git stash git stash drop
Отслеживать
ответ дан 30 мар 2018 в 10:36
28.6k 19 19 золотых знаков 58 58 серебряных знаков 136 136 бронзовых знаков
«тут уже никак, разве что вы сами удалите эти файлы» — чем, кстати, занимается git clean (с определёнными флагами).
– user181100
30 мар 2018 в 10:58
@D-side Кстати, выходит, если часть файлов в .gitignore и соответственно в контроле версий не участвует, то командой git clean -df их не подотрешь случайно, верно? Я так понял параметр -df должен не позволить ему перестараться или я не правильно понял?
30 мар 2018 в 12:02
@AleksandrSergeevich «не перестараться» ему говорит отсутствие среди опций x (которая как раз говорит «и не смотри на гитигноры»). И вообще, есть же инструкция 🙂
– user181100
30 мар 2018 в 12:06
«это практически то же самое» — не совсем так. Поэтому, по моему мнению, этот ответ более правильный и полный. Вместо HEAD лучше @, на 3-и знака короче.
– user282693
2 апр 2018 в 13:35
попробуйте git reset —mixed с указанием ветки, должно отмениться ваше добавление без коммита
Отслеживать
ответ дан 30 мар 2018 в 9:37
21 3 3 бронзовых знака
git reset —mixed вроде же не трогает рабочую копию в принципе? Кажется, это совершенно не то что нужно автору.
30 мар 2018 в 10:05
вроде как автор и не коммитил, я так полагаю речь идет про локальный репозиторий, который он просто хочет отменить добавления и не хочет наткнутся на конфликты. В данном случае можно при не желании танцевать с бубном удалить весь репозиторий с локалки и склонировать заново 🙂
30 мар 2018 в 11:57
Попробуйте использовать git checkout [имя файла] , подробнее тут
Отслеживать
ответ дан 30 мар 2018 в 9:26
2,298 1 1 золотой знак 9 9 серебряных знаков 12 12 бронзовых знаков
checkout не вернёт файлы в состояние с сервера
30 мар 2018 в 9:27
Да, не вернет, но зачем его брать с сервера, если оно есть в папке .git
30 мар 2018 в 9:28
Ой, да, но всё равно, если коммита не было, то он изменённые в данный момент файлы не вернёт в предыдущее состояние коммита, нужен revert
30 мар 2018 в 9:30
@PavelMayorov, reset же ветку возвращает на коммит, а ему насколько я понимаю, надо тупо откатить текущие изменения
30 мар 2018 в 9:36
если поменялось много файлов — то надоест для каждого делать чекаут, так что вариант так себе.
30 мар 2018 в 10:37
Решение:
Вижу в вопросе, что вы не делали комит, если также вы не добавляли измененные файлы в индекс командой git add , то можете воспользоваться командой:
git checkout -- .
Эта команда делает откат изменных файлов к их исходному состоянию, т.е. состоянию когда не было совершенно каких либо изменения.
Теория:
Откуда Git узнает, на какой ветке вы находитесь в данный момент? Он хранит специальный указатель, который называется HEAD (верхушка).
- git reset — обновляет индекс, перемещая его на HEAD.
- git checkout — обновляет рабочую ветку. HEAD будет обновлен в случае, если вы делаете переход с ветки на ветку.
О главном:
Необходимо понимать что вы хотите получить после ввода команды. Более детально описано здесь — ссылка на статью.