Новости,Обзоры Как пользоваться github

Как пользоваться github

Зачем новичку учить Git

Git используется в большинстве компаний, где над проектом работает хотя бы два разработчика:

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

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

Learn GitHub with GitHub

Learn how to create a site or blog from your GitHub repositories with GitHub Pages.


GitHub Pages

Community starter kit

There are millions of projects on GitHub, all competing for attention from the millions of open source contributors available to help. Learn how to help your project stand out.


Open Source

Uploading your project to GitHub

You’re an upload away from using a full suite of development tools and premier third-party apps on GitHub. This course helps you seamlessly upload your code to GitHub and introduces you to exciting next steps to elevate your project.



Migrating your repository to GitHub

You’re a migration away from using a full suite of development tools and premier third-party apps on GitHub. This course helps you seamlessly move code to GitHub and sets you up to do more after you make the move.



See how collaboration works on GitHub and start building great things, together.


Managing merge conflicts

Merge conflicts are a normal part of working in Git. Learn why they happen and how to resolve them with ease.


Merge conflicts


Security strategy essentials

Learn security best practices and keep your project’s contributions—and contributors—safe.


Dependency management




Learn security best practices and keep your project’s contributions—and contributors—safe.



Write a Learning Lab course

Your Learning Lab course will help developers around the world discover new technologies, learn new skills and build better software. You have knowledge to share and this course will help you take your first steps, today.




Learning Lab


Our Learning Paths

First Day on GitHub

Welcome to GitHub! We’re so glad you’re here. We know it can look overwhelming at first, so we’ve put together a few of our favorite courses for people logging in for the first time

  1. What is GitHub?

  2. Introduction to GitHub

  3. Git Handbook

First Week on GitHub

After you’ve mastered the basics, learn some of the fun things you can do on GitHub. From GitHub Pages to building projects with your friends, this path will give you plenty of new ideas.

  1. Discover GitHub Pages

  2. GitHub Pages

  3. Reviewing pull requests

DevOps with GitHub Actions

Learn how to do DevOps on GitHub with the power of GitHub Actions! This path will guide you through leveraging GitHub Actions to go from code to cloud.

  1. GitHub Actions: Hello World

  2. GitHub Actions: Continuous Integration

  3. GitHub Actions: Publish to GitHub Packages

Languages and Tools

Introduction to HTML

If you are looking for a quick and fun introduction to the exciting world of programming, this course is for you. Learn fundamental HTML skills and build your first webpage in less than an hour.

GitHub Pages

Introduction to Node with Express

Node.js gives you the ability to run JavaScript files on the server-side. Express is a library for Node.js, that allows you to make requests to different «endpoints» and get a response back.






Go from Hello World to writing a short random quote generator using Python.


Learn how to create a dice-rolling app with Python!


Intermediate NodeJS Course

This tutorial expands on concepts in the intro to Node.js and Express.js course. You will learn how to use a database (MongoDB) to Create, Read, Update, and Delete data.






Learn the basics of Ruby. Make a hello world program, then include if/else statements


TensorFlow Image Processing

Get started with Machine Learning (ML)/Neural Network (NN) tools



Machine learning

Neural network

Predict Pokemon stats with the help of the TensorFlow library



Machine learning

Neural network

Java is an object oriented programming language, which is popular for multi-platform apps.


Introduction to PHP

PHP is a server-side programming language that can insert dynamic code into your HTML. PHP is used in popular content management systems, such as WordPress and Drupal.


Introduction to Design Thinking

Design Thinking is a human-centric approach to creating solutions. This course will teach you the principles of Design Thinking and walk you through applying its five phases to your projects.

Setting up a Reason React App

Hello and welcome!
In this lab we will cover the basic setup needed to build Reason React applications, covering testing, documenting them, building, and releasing them!





Learn the basics to create an Express server and follow the REST principles.





In this course you will learn how to create an Android application that displays a TomTom Map




Notating with LilyPond

LilyPond is an open source technology for notating music in plain text files. In this course, we’ll cover the fundamentals of music notation in LilyPond.

Introduction to React

In this course, you will learn the basics of React.js through building a gradebook web application to manage assignments, students, and grades.

Common Continuous Integration Team Scenarios

The course guides participants through situations commonly encountered when integrating continuously as a team.


Continuous Integration



Team Work

Step 2. Create a Branch

Branching is the way to work on different versions of a repository at one time.

By default your repository has one branch named which is considered to be the definitive branch. We use branches to experiment and make edits before committing them to .

When you create a branch off the branch, you’re making a copy, or snapshot, of as it was at that point in time. If someone else made changes to the branch while you were working on your branch, you could pull in those updates.

This diagram shows:

  • The branch
  • A new branch called (because we’re doing ‘feature work’ on this branch)
  • The journey that takes before it’s merged into

Have you ever saved different versions of a file? Something like:

Branches accomplish similar goals in GitHub repositories.

Here at GitHub, our developers, writers, and designers use branches for keeping bug fixes and feature work separate from our (production) branch. When a change is ready, they merge their branch into .

To create a new branch

  1. Go to your new repository .
  2. Click the drop down at the top of the file list that says branch: main.
  3. Type a branch name, , into the new branch text box.
  4. Select the blue Create branch box or hit “Enter” on your keyboard.

Now you have two branches, and . They look exactly the same, but not for long! Next we’ll add our changes to the new branch.