You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/ru/1-getting-started-lessons/2-github-basics
softchris 9837770ac1
🌐 Update translations via Co-op Translator
1 month ago
..
README.md 🌐 Update translations via Co-op Translator 1 month ago

README.md

Введение в GitHub

Привет, будущий разработчик! 👋 Готов присоединиться к миллионам программистов по всему миру? Я искренне рад познакомить тебя с GitHub представь себе социальную сеть для программистов, где вместо фотографий обедов мы делимся кодом и создаем невероятные вещи вместе!

Вот что меня действительно поражает: каждое приложение на твоем телефоне, каждый сайт, который ты посещаешь, и большинство инструментов, которыми ты будешь пользоваться, были созданы командами разработчиков, сотрудничающими на таких платформах, как GitHub. Твое любимое музыкальное приложение? Кто-то вроде тебя внес в него свой вклад. Та игра, от которой ты не можешь оторваться? Да, скорее всего, она была создана с помощью GitHub. А теперь ТЫ научишься быть частью этого удивительного сообщества!

Я понимаю, что сначала это может показаться сложным честно говоря, я помню, как смотрел на свою первую страницу GitHub и думал: "Что это вообще значит?" Но вот в чем дело: каждый разработчик начинал именно с того места, где ты находишься сейчас. К концу этого урока у тебя будет свой собственный репозиторий на GitHub (представь это как свою личную витрину проектов в облаке), и ты узнаешь, как сохранять свою работу, делиться ею с другими и даже вносить вклад в проекты, которыми пользуются миллионы людей.

Мы пройдем этот путь вместе, шаг за шагом. Без спешки, без давления только ты, я и несколько действительно крутых инструментов, которые станут твоими новыми лучшими друзьями!

Введение в GitHub

Скетчноут от Tomomi Imura

Предварительный тест

Предварительный тест

Введение

Прежде чем мы погрузимся в действительно захватывающие вещи, давай подготовим твой компьютер к магии GitHub! Представь это как организацию своих художественных принадлежностей перед созданием шедевра наличие нужных инструментов делает все намного проще и веселее.

Я лично проведу тебя через каждый этап настройки, и обещаю, это не так уж страшно, как может показаться на первый взгляд. Если что-то сразу не получается, это абсолютно нормально! Я помню, как настраивал свою первую среду разработки и чувствовал себя так, будто пытаюсь расшифровать древние иероглифы. Каждый разработчик был в той же ситуации, что и ты сейчас, задаваясь вопросом, правильно ли он все делает. Спойлер: если ты здесь и учишься, значит, ты уже на правильном пути! 🌟

В этом уроке мы рассмотрим:

  • отслеживание работы на твоем компьютере
  • работу над проектами с другими
  • как вносить вклад в проекты с открытым исходным кодом

Предварительные требования

Давай подготовим твой компьютер к магии GitHub! Не переживай эту настройку нужно сделать всего один раз, и ты будешь готов ко всему своему пути в программировании.

Итак, начнем с основы! Сначала нужно проверить, установлен ли Git на твоем компьютере. Git это как суперумный помощник, который запоминает каждое изменение, которое ты вносишь в свой код намного лучше, чем постоянно нажимать Ctrl+S каждые две секунды (с этим сталкивались все!).

Давай проверим, установлен ли Git, введя эту волшебную команду в терминале: git --version

Если Git еще не установлен, не переживай! Просто зайди на скачать Git и установи его. После установки нужно правильно представить себя Git:

💡 Первоначальная настройка: Эти команды говорят Git, кто ты. Эта информация будет прикреплена к каждому коммиту, который ты сделаешь, поэтому выбери имя и email, которые ты готов сделать публичными.

git config --global user.name "your-name"
git config --global user.email "your-email"

Чтобы проверить, настроен ли Git, можно ввести:

git config --list

Тебе также понадобится аккаунт на GitHub, редактор кода (например, Visual Studio Code), и нужно будет открыть терминал (или командную строку).

Перейди на github.com и создай аккаунт, если у тебя его еще нет, или войди и заполни свой профиль.

💡 Современный совет: Рассмотри возможность настройки SSH-ключей или использования GitHub CLI для более удобной аутентификации без паролей.

GitHub не единственный репозиторий кода в мире; есть и другие, но GitHub самый известный.

Подготовка

Тебе понадобится папка с проектом кода на твоем локальном компьютере (ноутбуке или ПК) и публичный репозиторий на GitHub, который будет служить примером того, как вносить вклад в проекты других.

Сохранность твоего кода

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

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

При работе с GitHub важно следовать лучшим практикам безопасности:

Область безопасности Лучшая практика Почему это важно
Аутентификация Используй SSH-ключи или персональные токены доступа Пароли менее безопасны и постепенно уходят в прошлое
Двухфакторная аутентификация Включи 2FA в своем аккаунте GitHub Добавляет дополнительный уровень защиты аккаунта
Безопасность репозитория Никогда не коммить чувствительную информацию API-ключи и пароли не должны быть в публичных репозиториях
Управление зависимостями Включи Dependabot для обновлений Обеспечивает безопасность и актуальность зависимостей

⚠️ Критическое напоминание о безопасности: Никогда не коммить API-ключи, пароли или другую конфиденциальную информацию в любой репозиторий. Используй переменные окружения и файлы .gitignore для защиты данных.

Современная настройка аутентификации:

# Generate SSH key (modern ed25519 algorithm)
ssh-keygen -t ed25519 -C "your_email@example.com"

# Set up Git to use SSH
git remote set-url origin git@github.com:username/repository.git

💡 Совет профессионала: SSH-ключи избавляют от необходимости постоянно вводить пароли и являются более безопасным методом аутентификации.


Управление кодом как профессионал

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

Представь себе: ты пишешь удивительную историю и хочешь отслеживать каждый черновик, каждую блестящую правку и каждое "Ого, это гениально!" на протяжении всего процесса. Именно это Git делает для твоего кода! Это как иметь невероятный блокнот, который запоминает ВСЕ каждое нажатие клавиши, каждое изменение, каждое "ой, все сломалось", которое ты можешь мгновенно отменить.

Признаюсь сначала это может показаться сложным. Когда я начинал, я думал: "Почему я просто не могу сохранять свои файлы, как обычно?" Но поверь мне: как только ты поймешь, как работает Git (а ты поймешь!), у тебя будет момент озарения, когда ты подумаешь: "Как я вообще мог программировать без этого?" Это как открыть для себя способность летать, когда ты всю жизнь ходил пешком!

Представь, что у тебя есть папка с проектом кода на компьютере, и ты хочешь начать отслеживать свой прогресс с помощью git системы контроля версий. Некоторые сравнивают использование git с написанием любовного письма своему будущему "я". Читая свои сообщения о коммитах через дни, недели или месяцы, ты сможешь вспомнить, почему принял то или иное решение, или "откатить" изменения конечно, если ты пишешь хорошие сообщения о коммитах.

Задача: Создай свой первый репозиторий!

🎯 Твоя миссия (и я так рад за тебя!): Мы вместе создадим твой первый репозиторий на GitHub! К тому моменту, как мы закончим, у тебя будет свой уголок в интернете, где будет храниться твой код, и ты сделаешь свой первый "коммит" (это разработческое слово, означающее сохранение работы очень умным способом).

Это действительно особенный момент ты официально присоединяешься к глобальному сообществу разработчиков! Я до сих пор помню, как создавал свой первый репозиторий и думал: "Вау, я действительно это делаю!"

Давай пройдем через это приключение вместе, шаг за шагом. Не торопись с каждым этапом за спешку призов не дают, и я обещаю, что каждый шаг будет понятен. Помни, каждый разработчик, которым ты восхищаешься, когда-то сидел точно там, где ты сейчас, готовясь создать свой первый репозиторий. Как это круто?

Посмотри видео

Видео о Git и GitHub

Давай сделаем это вместе:

  1. Создай свой репозиторий на GitHub. Зайди на GitHub.com и найди яркую зеленую кнопку New (или знак + в правом верхнем углу). Нажми на нее и выбери New repository.

    Вот что нужно сделать:

    1. Дай своему репозиторию имя выбери что-то значимое для тебя!
    2. Добавь описание, если хочешь (это поможет другим понять, о чем твой проект)
    3. Реши, хочешь ли ты сделать его публичным (все смогут его видеть) или приватным (только для тебя)
    4. Рекомендую поставить галочку, чтобы добавить файл README это как главная страница твоего проекта
    5. Нажми Create repository и празднуй ты только что создал свой первый репозиторий! 🎉
  2. Перейди в папку своего проекта. Теперь откроем терминал (не переживай, он не так страшен, как выглядит!). Нам нужно указать компьютеру, где находятся файлы твоего проекта. Введи эту команду:

    cd [name of your folder]
    

    Что мы здесь делаем:

    • Мы говорим компьютеру: "Эй, открой папку моего проекта"
    • Это как открыть определенную папку на рабочем столе, но мы делаем это с помощью текстовых команд
    • Замени [name of your folder] на фактическое имя папки твоего проекта
  3. Преврати свою папку в Git-репозиторий. Вот где начинается магия! Введи:

    git init
    

    Что только что произошло (довольно круто!):

    • Git создал скрытую папку .git в твоем проекте ты ее не увидишь, но она там!
    • Твоя обычная папка теперь стала "репозиторием", который может отслеживать каждое изменение
    • Представь, что ты дал своей папке суперспособности запоминать все
  4. Проверь, что происходит. Давай посмотрим, что Git думает о твоем проекте прямо сейчас:

    git status
    

    Понимание того, что говорит Git:

    Ты можешь увидеть что-то вроде этого:

    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:   file.txt
         modified:   file2.txt
    

    Не паникуй! Вот что это значит:

    • Файлы в красном это файлы, которые изменены, но еще не готовы к сохранению
    • Файлы в зеленом (когда ты их увидишь) готовы к сохранению
    • Git помогает, говоря тебе, что можно сделать дальше

    💡 Совет профессионала: Команда git status твой лучший друг! Используй ее всякий раз, когда ты запутался в происходящем. Это как спросить у Git: "Эй, какая сейчас ситуация?"

  5. Подготовь свои файлы к сохранению (это называется "стейджинг"):

    git add .
    

    Что мы только что сделали:

    • Мы сказали Git: "Эй, я хочу включить ВСЕ мои файлы в следующее сохранение"
    • . означает "все в этой папке"
    • Теперь твои файлы "стейджированы" и готовы к следующему шагу

    Хочешь быть более избирательным? Ты можешь добавить только определенные файлы:

    git add [file or folder name]
    

    Почему ты можешь захотеть сделать это?

    • Иногда ты хочешь сохранить связанные изменения вместе
    • Это помогает организовать твою работу в логические блоки
    • Упрощает понимание того, что изменилось и когда

    Передумал? Не переживай! Ты можешь убрать файлы из стейджинга вот так:

    # Unstage everything
    git reset
    
    # Unstage just one file
    git reset [file name]
    

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

  6. Сохрани свою работу навсегда (сделай свой первый коммит!):

    git commit -m "first commit"
    

    🎉 Поздравляю! Ты только что сделал свой первый коммит!

    Что только что произошло:

    • Git сделал "снимок" всех твоих стейджированных файлов в этот момент
    • Твое сообщение о коммите "first commit" объясняет, о чем этот момент сохранения
    • Git присвоил этому снимку уникальный идентификатор, чтобы ты всегда мог его найти
    • Ты официально начал отслеживать историю своего проекта!

    💡 Будущие сообщения о коммитах: Для следующих коммитов будь более описательным! Вместо "обновил что-то" попробуй "Добавил контактную форму на главную страницу" или "Исправил ошибку в меню навигации". Твое будущее "я" скажет тебе спасибо!

  7. Подключи свой локальный проект к GitHub. Сейчас твой проект существует только на твоем компьютере. Давай подключим его к репозиторию на GitHub, чтобы ты мог поделиться им с миром!

    Сначала зайди на страницу своего репозитория на GitHub и скопируй URL. Затем вернись сюда и введи:

    git remote add origin https://github.com/username/repository_name.git
    

    (Замени этот URL на фактический URL твоего репозитория!)

    Что мы только что сделали:

    • Мы создали связь между вашим локальным проектом и репозиторием на GitHub.
    • "Origin" — это просто прозвище для вашего репозитория на GitHub, как добавление контакта в телефон.
    • Теперь ваш локальный Git знает, куда отправлять ваш код, когда вы готовы его поделиться.

    💡 Проще способ: Если у вас установлен GitHub CLI, вы можете сделать это одной командой:

    gh repo create my-repo --public --push --source=.
    
  8. Отправьте ваш код на GitHub (важный момент!):

    git push -u origin main
    

    🚀 Вот оно! Вы загружаете ваш код на GitHub!

    Что происходит:

    • Ваши коммиты отправляются с вашего компьютера на GitHub.
    • Флаг -u устанавливает постоянное соединение, чтобы будущие отправки были проще.
    • "main" — это название вашей основной ветки (как главная папка).
    • После этого для будущих загрузок достаточно просто ввести git push!

    💡 Быстрая заметка: Если ваша ветка называется иначе (например, "master"), используйте это название. Вы можете проверить это с помощью git branch --show-current.

  9. Ваш новый ежедневный ритм кодирования (вот где начинается зависимость!):

    Отныне, каждый раз, когда вы вносите изменения в проект, у вас есть простой трехшаговый процесс:

    git add .
    git commit -m "describe what you changed"
    git push
    

    Это становится вашим ритмом кодирования:

    • Внесите потрясающие изменения в ваш код
    • Добавьте их с помощью git add ("Эй, Git, обрати внимание на эти изменения!")
    • Сохраните их с помощью git commit и добавьте описательное сообщение (будущий вы скажет вам спасибо!)
    • Поделитесь ими с миром, используя git push 🚀
    • Повторяйте снова и снова — серьезно, это становится таким же естественным, как дыхание!

    Мне нравится этот рабочий процесс, потому что он похож на создание множества точек сохранения в видеоигре. Сделали изменение, которое вам нравится? Закоммитьте его! Хотите попробовать что-то рискованное? Без проблем — вы всегда можете вернуться к последнему коммиту, если что-то пойдет не так!

    💡 Совет: Возможно, вам также стоит использовать файл .gitignore, чтобы предотвратить отслеживание файлов, которые вы не хотите видеть на GitHub — например, файл с заметками, который хранится в той же папке, но не имеет места в публичном репозитории. Вы можете найти шаблоны для файлов .gitignore на .gitignore templates или создать его с помощью gitignore.io.

Современные рабочие процессы Git

Рассмотрите возможность использования этих современных практик:

  • Conventional Commits: Используйте стандартизированный формат сообщений коммитов, например feat:, fix:, docs: и т.д. Узнайте больше на conventionalcommits.org
  • Атомарные коммиты: Пусть каждый коммит представляет собой одно логическое изменение.
  • Частые коммиты: Коммитьте часто с описательными сообщениями, а не делайте редкие и крупные коммиты.

Сообщения коммитов

Отличная строка темы коммита должна завершать следующее предложение: Если применить, этот коммит <ваша строка темы здесь>

Для темы используйте повелительное наклонение в настоящем времени: "изменить", а не "изменил" или "изменяет". Как и в теме, в теле сообщения (опционально) также используйте повелительное наклонение в настоящем времени. Тело должно включать мотивацию для изменения и контрастировать это с предыдущим поведением. Вы объясняете почему, а не как.

Потратьте несколько минут, чтобы поискать на GitHub. Можете ли вы найти действительно отличное сообщение коммита? А минимальное? Какую информацию, по вашему мнению, наиболее важно и полезно передать в сообщении коммита?

Работа с другими (самая интересная часть!)

Держитесь крепче, потому что СЕЙЧАС начинается настоящая магия GitHub! 🪄 Вы освоили управление своим кодом, а теперь мы погружаемся в мою абсолютную любимую часть — сотрудничество с удивительными людьми со всего мира.

Представьте: вы просыпаетесь завтра утром и видите, что кто-то из Токио улучшил ваш код, пока вы спали. Затем кто-то из Берлина исправляет баг, над которым вы ломали голову. А к обеду разработчик из Сан-Паулу добавляет функцию, о которой вы даже не думали. Это не научная фантастика — это просто обычный вторник во вселенной GitHub!

Что меня действительно вдохновляет, так это то, что навыки сотрудничества, которые вы собираетесь освоить, — это ТОЧНО те же рабочие процессы, которые команды Google, Microsoft и ваших любимых стартапов используют каждый день. Вы изучаете не просто крутой инструмент — вы изучаете секретный язык, который позволяет всему миру разработчиков работать вместе.

Серьезно, как только вы испытаете восторг от того, что кто-то объединяет ваш первый pull request, вы поймете, почему разработчики так увлечены open source. Это как быть частью самого большого и креативного командного проекта в мире!

Посмотрите видео

Видео о Git и GitHub основах

Основная причина размещения проектов на GitHub — это возможность сотрудничать с другими разработчиками.

В вашем репозитории перейдите в Insights > Community, чтобы увидеть, как ваш проект соответствует рекомендованным стандартам сообщества.

Хотите, чтобы ваш репозиторий выглядел профессионально и привлекательно? Перейдите в ваш репозиторий и нажмите Insights > Community. Эта классная функция показывает, как ваш проект соответствует тому, что сообщество GitHub считает "хорошими практиками репозитория".

🎯 Сделайте ваш проект ярким: Хорошо организованный репозиторий с качественной документацией — это как чистая, приветливая витрина. Это показывает, что вы заботитесь о своей работе и побуждает других участвовать!

Что делает репозиторий отличным:

Что добавить Почему это важно Что это дает вам
Описание Первое впечатление имеет значение! Люди сразу понимают, что делает ваш проект
README Главная страница вашего проекта Как дружелюбный гид для новых посетителей
Руководство по внесению изменений Показывает, что вы приветствуете помощь Люди точно знают, как они могут вам помочь
Кодекс поведения Создает дружелюбную атмосферу Все чувствуют себя желанными участниками
Лицензия Юридическая ясность Другие знают, как они могут использовать ваш код
Политика безопасности Показывает вашу ответственность Демонстрирует профессиональные практики

💡 Совет профессионала: GitHub предоставляет шаблоны для всех этих файлов. При создании нового репозитория отметьте галочки, чтобы автоматически сгенерировать эти файлы.

Современные функции GitHub для изучения:

🤖 Автоматизация и CI/CD:

  • GitHub Actions для автоматического тестирования и развертывания.
  • Dependabot для автоматического обновления зависимостей.

💬 Сообщество и управление проектами:

  • GitHub Discussions для обсуждений в сообществе вне задач.
  • GitHub Projects для управления проектами в стиле канбан.
  • Правила защиты веток для обеспечения качества кода.

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

Файлы README, хотя их подготовка занимает время, часто игнорируются занятыми разработчиками. Можете ли вы найти пример особенно подробного README? Примечание: существуют инструменты для создания хороших README, которые вам могут пригодиться.

Задача: Объедините немного кода

Документы для внесения изменений помогают людям участвовать в проекте. Они объясняют, какие типы вкладов вам нужны и как работает процесс. Участникам потребуется пройти ряд шагов, чтобы внести изменения в ваш репозиторий на GitHub:

  1. Форк вашего репозитория. Скорее всего, вы захотите, чтобы люди форкали ваш проект. Форк означает создание копии вашего репозитория в их профиле на GitHub.
  2. Клонирование. После этого они клонируют проект на свой локальный компьютер.
  3. Создание ветки. Вы захотите попросить их создать ветку для своей работы.
  4. Сосредоточиться на одной области изменений. Попросите участников сосредоточить свои изменения на одной вещи за раз — так вероятность того, что вы сможете объединить их работу, будет выше. Представьте, что они исправляют баг, добавляют новую функцию и обновляют несколько тестов — что, если вы хотите или можете реализовать только 2 из 3 или 1 из 3 изменений?

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

Помните, будьте тем изменением, которое хотите видеть в мире, и создавайте ветки для своей работы тоже. Любые коммиты, которые вы делаете, будут сделаны в ветке, в которой вы сейчас "находитесь". Используйте git status, чтобы увидеть, какая это ветка.

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

  1. Создайте ветку. Используйте команду git branch, чтобы создать ветку, которая будет содержать изменения, которые они хотят внести:

    git branch [branch-name]
    

    💡 Современный подход: Вы также можете создать и переключиться на новую ветку одной командой:

    git switch -c [branch-name]
    
  2. Переключитесь на рабочую ветку. Переключитесь на указанную ветку и обновите рабочую директорию с помощью git switch:

    git switch [branch-name]
    

    💡 Современная заметка: git switch — это современная замена git checkout при смене веток. Она более понятна и безопасна для новичков.

  3. Работайте. На этом этапе вы можете добавить свои изменения. Не забудьте сообщить Git об этом с помощью следующих команд:

    git add .
    git commit -m "my changes"
    

    ⚠️ Качество сообщения коммита: Убедитесь, что вы дали вашему коммиту хорошее название, как для себя, так и для поддерживающего репозиторий, над которым вы помогаете. Будьте конкретны в том, что вы изменили!

  4. Объедините вашу работу с веткой main. В какой-то момент вы завершите работу и захотите объединить ее с веткой main. Ветка main могла измениться за это время, поэтому сначала убедитесь, что вы обновили ее до последней версии с помощью следующих команд:

    git switch main
    git pull
    

    На этом этапе вы хотите убедиться, что любые конфликты, ситуации, когда Git не может легко объединить изменения, происходят в вашей рабочей ветке. Поэтому выполните следующие команды:

    git switch [branch_name]
    git merge main
    

    Команда git merge main объединит все изменения из main в вашу ветку. Надеемся, вы сможете просто продолжить. Если нет, VS Code покажет вам, где Git запутался, и вы просто измените затронутые файлы, чтобы указать, какой контент наиболее точен.

    💡 Современная альтернатива: Рассмотрите использование git rebase для более чистой истории:

    git rebase main
    

    Это воспроизводит ваши коммиты поверх последней ветки main, создавая линейную историю.

  5. Отправьте вашу работу на GitHub. Отправка вашей работы на GitHub означает две вещи: отправка вашей ветки в ваш репозиторий и затем открытие PR, Pull Request.

    git push --set-upstream origin [branch-name]
    

    Вышеуказанная команда создает ветку в вашем форкнутом репозитории.

  6. Откройте PR. Далее вы захотите открыть PR. Для этого перейдите в форкнутый репозиторий на GitHub. Вы увидите уведомление на GitHub, где вас спросят, хотите ли вы создать новый PR, нажмите на него, и вы попадете в интерфейс, где сможете изменить заголовок сообщения коммита, дать ему более подходящее описание. Теперь поддерживающий репозиторий, который вы форкали, увидит этот PR и, надеемся, оценит и объединит ваш PR. Теперь вы стали участником, ура :)

    💡 Современный совет: Вы также можете создавать PR, используя GitHub CLI:

    gh pr create --title "Your PR title" --body "Description of changes"
    

    🔧 Лучшие практики для PR:

    • Ссылайтесь на связанные задачи, используя ключевые слова, такие как "Fixes #123".
    • Добавляйте скриншоты для изменений в интерфейсе.
    • Запрашивайте конкретных рецензентов.
    • Используйте черновые PR для работы в процессе.
    • Убедитесь, что все проверки CI проходят перед запросом рецензии.
  7. Очистите. Считается хорошей практикой очистить после успешного объединения PR. Вы хотите удалить как локальную ветку, так и ветку, которую вы отправили на GitHub. Сначала удалите ее локально с помощью следующей команды:

    git branch -d [branch-name]
    

    Убедитесь, что вы перешли на страницу GitHub для форкнутого репозитория и удалили удаленную ветку, которую вы только что отправили.

Pull request кажется странным термином, потому что на самом деле вы хотите отправить свои изменения в проект. Но поддерживающий (владелец проекта) или основная команда должны рассмотреть ваши изменения перед их объединением с "основной" веткой проекта, так что вы действительно запрашиваете решение о внесении изменений у поддерживающего.

Pull request — это место для сравнения и обсуждения различий, внесенных в ветку, с рецензиями, комментариями, интегрированными тестами и многим другим. Хороший pull request следует примерно тем же правилам, что и сообщение коммита. Вы можете добавить ссылку на задачу в трекере задач, если ваша работа, например, исправляет задачу. Это делается с помощью #, за которым следует номер вашей задачи. Например, #97. 🤞Держим кулачки, чтобы все проверки прошли успешно и владелец(ы) проекта приняли ваши изменения в проект🤞

Обновите текущую локальную рабочую ветку, добавив все новые коммиты из соответствующей удаленной ветки на GitHub:

git pull

Вклад в Open Source (Ваш шанс повлиять на мир!)

Готовы к чему-то, что вас абсолютно поразит? 🤯 Давайте поговорим о внесении вклада в проекты с открытым исходным кодом у меня мурашки от мысли поделиться этим с вами!

Это ваш шанс стать частью чего-то по-настоящему удивительного. Представьте, что вы улучшаете инструменты, которыми ежедневно пользуются миллионы разработчиков, или исправляете ошибку в приложении, которое обожают ваши друзья. Это не просто мечта это то, что означает вклад в open source!

Вот что вызывает у меня восторг каждый раз, когда я думаю об этом: каждый инструмент, с которым вы учитесь ваш редактор кода, фреймворки, которые мы изучаем, даже браузер, в котором вы читаете это начался с того, что кто-то, точно такой же, как вы, сделал свой первый вклад. Тот гениальный разработчик, который создал ваше любимое расширение для VS Code? Когда-то он был новичком, нажимая "создать pull request" с дрожащими руками, точно так же, как вы собираетесь сделать.

И вот самое прекрасное: сообщество open source это как самый большой групповой обнимашки в интернете. Большинство проектов активно ищут новичков и имеют задачи с тегом "good first issue" специально для таких, как вы! Мейнтейнеры искренне радуются, когда видят новых участников, потому что помнят свои первые шаги.

Вы не просто учитесь программировать вы готовитесь стать частью глобальной семьи создателей, которые каждый день думают: "Как мы можем сделать цифровой мир немного лучше?" Добро пожаловать в клуб! 🌟

Сначала давайте найдем репозиторий (или repo) на GitHub, который вас заинтересует и в который вы хотели бы внести изменения. Вам нужно будет скопировать его содержимое на свой компьютер.

Хороший способ найти репозитории для новичков поиск по тегу 'good-first-issue'.

Скопировать репозиторий локально

Есть несколько способов скопировать код. Один из них "клонировать" содержимое репозитория, используя HTTPS, SSH или GitHub CLI (Command Line Interface).

Откройте терминал и клонируйте репозиторий следующим образом:

# Using HTTPS
git clone https://github.com/ProjectURL

# Using SSH (requires SSH key setup)
git clone git@github.com:username/repository.git

# Using GitHub CLI
gh repo clone username/repository

Чтобы работать над проектом, перейдите в нужную папку: cd ProjectURL

Вы также можете открыть весь проект, используя:

  • GitHub Codespaces облачная среда разработки GitHub с VS Code в браузере
  • GitHub Desktop графическое приложение для операций с Git
  • GitHub.dev нажмите клавишу . на любом репозитории GitHub, чтобы открыть VS Code в браузере
  • VS Code с расширением GitHub Pull Requests

Наконец, вы можете скачать код в виде zip-архива.

Несколько интересных фактов о GitHub

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

У проектов есть трекер задач, чаще всего на GitHub во вкладке "Issues", если не указано иначе, где люди обсуждают проблемы, связанные с проектом. А вкладка Pull Requests это место, где обсуждаются и проверяются изменения, которые находятся в процессе.

У проектов также могут быть обсуждения на форумах, в рассылках или чатах, таких как Slack, Discord или IRC.

🔧 Современные функции GitHub:

  • GitHub Discussions встроенный форум для общения сообщества
  • GitHub Sponsors финансовая поддержка мейнтейнеров
  • Вкладка Security отчеты о уязвимостях и рекомендации по безопасности
  • Вкладка Actions автоматизированные рабочие процессы и CI/CD пайплайны
  • Вкладка Insights аналитика о участниках, коммитах и состоянии проекта
  • Вкладка Projects встроенные инструменты управления проектами на GitHub

Ознакомьтесь с вашим новым репозиторием на GitHub и попробуйте сделать несколько вещей, например, изменить настройки, добавить информацию в репозиторий, создать проект (например, доску Kanban) и настроить GitHub Actions для автоматизации. Возможностей много!


🚀 Задание

Ну что, пора испытать ваши новые суперспособности на GitHub! 🚀 Вот задание, которое поможет вам закрепить знания самым увлекательным образом:

Возьмите друга (или того члена семьи, который всегда спрашивает, чем вы занимаетесь с этим "компьютерным делом") и отправляйтесь в совместное кодерское приключение! Здесь начинается настоящая магия создайте проект, пусть ваш друг его форкнет, создайте несколько веток и объедините изменения, как настоящие профессионалы.

Не буду скрывать вы, скорее всего, будете смеяться (особенно когда оба попытаетесь изменить одну и ту же строку), возможно, немного запутаетесь, но обязательно испытаете те удивительные моменты "ага!", которые делают весь процесс обучения стоящим. А еще есть что-то особенное в том, чтобы разделить первый успешный merge с кем-то это как маленький праздник ваших достижений!

Пока у вас нет напарника? Не переживайте! Сообщество GitHub полно невероятно дружелюбных людей, которые помнят, каково это быть новичком. Ищите репозитории с меткой "good first issue" это как приглашение: "Эй, новички, давайте учиться вместе!" Как же это здорово?

Викторина после лекции

Викторина после лекции

Повторение и продолжение обучения

Ух ты! 🎉 Посмотрите на себя вы только что освоили основы GitHub, как настоящий чемпион! Если ваш мозг сейчас немного перегружен, это абсолютно нормально и, честно говоря, хороший знак. Вы только что изучили инструменты, на освоение которых у меня ушли недели, когда я начинал.

Git и GitHub невероятно мощные (серьезно, очень мощные), и каждый разработчик, которого я знаю включая тех, кто сейчас кажется волшебником должен был практиковаться и немного путаться, прежде чем все стало понятно. Тот факт, что вы прошли этот урок, означает, что вы уже на пути к освоению одних из самых важных инструментов в арсенале разработчика.

Вот несколько отличных ресурсов, которые помогут вам практиковаться и стать еще круче:

И помните: практика ведет к прогрессу, а не к совершенству! Чем больше вы используете Git и GitHub, тем естественнее это становится. GitHub создал несколько потрясающих интерактивных курсов, которые позволят вам практиковаться в безопасной среде:

Чувствуете себя готовыми к новым вызовам? Ознакомьтесь с этими современными инструментами:

Вызов GitHub Copilot Agent 🚀

Используйте режим Agent, чтобы выполнить следующее задание:

Описание: Создайте совместный проект веб-разработки, который демонстрирует полный рабочий процесс GitHub, изученный в этом уроке. Это задание поможет вам попрактиковаться в создании репозитория, использовании функций для совместной работы и современных рабочих процессов Git в реальных условиях.

Задание: Создайте новый публичный репозиторий на GitHub для простого проекта "Ресурсы для веб-разработки". Репозиторий должен включать хорошо структурированный файл README.md, содержащий полезные инструменты и ресурсы для веб-разработки, организованные по категориям (HTML, CSS, JavaScript и т.д.). Настройте репозиторий в соответствии с общепринятыми стандартами сообщества, включая лицензию, рекомендации по внесению вклада и кодекс поведения. Создайте как минимум две ветки для функций: одну для добавления ресурсов по CSS и другую для ресурсов по JavaScript. Сделайте коммиты в каждую ветку с описательными сообщениями коммитов, затем создайте pull requests для слияния изменений обратно в основную ветку. Включите функции GitHub, такие как Issues, Discussions, и настройте базовый рабочий процесс GitHub Actions для автоматических проверок.

Задание

Ваша миссия, если вы решите ее принять: Пройдите курс Введение в GitHub на GitHub Skills. Этот интерактивный курс позволит вам попрактиковаться во всем, что вы узнали, в безопасной и управляемой среде. А еще вы получите классный значок, когда закончите! 🏅

Готовы к новым вызовам?

  • Настройте аутентификацию SSH для вашего аккаунта GitHub (больше никаких паролей!)
  • Попробуйте использовать GitHub CLI для ежедневных операций с Git
  • Создайте репозиторий с рабочим процессом GitHub Actions
  • Исследуйте GitHub Codespaces, открыв этот самый репозиторий в облачном редакторе

Помните: каждый эксперт когда-то был новичком. У вас все получится! 💪


Отказ от ответственности:
Этот документ был переведен с использованием сервиса автоматического перевода Co-op Translator. Хотя мы стремимся к точности, пожалуйста, учитывайте, что автоматические переводы могут содержать ошибки или неточности. Оригинальный документ на его родном языке следует считать авторитетным источником. Для получения критически важной информации рекомендуется профессиональный перевод человеком. Мы не несем ответственности за любые недоразумения или неправильные интерпретации, возникающие в результате использования данного перевода.