Репозиторий — часть системы Git, которая позволяет программистам совместно работать над проектами. Этот инструмент облегчает жизнь IT-специалистам: с ним можно безопасно вносить изменения в программный код. Что такое Git, как работает и для чего нужен репозиторий — рассказываем в статье.
Что такое репозиторий простыми словами
- Локальный — расположен на одном компьютере, и работать с ним может только один человек.
- Централизованный — расположен на сервере, куда имеют доступ сразу несколько программистов.
- Распределенный — самый удобный вариант с облачным хранилищем. Главный репозиторий хранится в облаке, а его локальные копии — у разработчиков на компьютерах. Когда программист вносит правки в локальную версию, ее можно синхронизировать с удаленной. Получается, что в облаке всегда актуальный код.
Для работы с распределенными репозиториями нужен удобный сервис. Самые популярные — GitHub, GitLab и Bitbucket. У них понятный интерфейс, в котором можно управлять проектом, добавлять новые объекты и искать общедоступные репозитории.
Видео #28. Пакеты, репозитории и другие термины
Git — это система, которая позволяет контролировать версии приложения. Она сохраняет все подтвержденные изменения кода. Поэтому в любой момент можно отменить правки или исключить ненужные части кода.
Git-сервисы позволяют переключаться между ветками кода и просматривать коммиты. Объясним, что такое ветка и коммит, на примере сервиса GitLab.
Пример репозитория в GitLab — структура такая же, как в обычном файловом менеджере
Чтобы изменения отправились в репозиторий проекта, их нужно «закоммитить». Так называется отправка данных в репозиторий. Это действие нужно, чтобы в репозитории была четкая структура версий.
Коммит подтверждает, что изменения в коде финальные и их можно применять.
Пример коммита в системе GitLab. Сразу видно, кто, когда и какие изменения внес в репозиторий
В репозиториях существуют «ветки» — это важная особенность Git-систем. Ветка позволяет менять отдельные элементы кода, не вмешиваясь в основной код. Главная ветка называется master, дополнительные можно называть по-своему.
Так выглядит раздел с ветками в GitLab — они разделяются на активные и устаревшие. В меню можно посмотреть название, скачать или удалить всю ветку
Внутри ветки видно весь ход изменений. Например, что конкретно и в каких файлах изменили
Как работать с системой распределенных репозиториев
Системы распределенных репозиториев GitHub, GitLab и Bitbucket удобны по нескольким причинам:
- Через них легко координировать разработку, проводить и публиковать тесты.
- В них можно размещать открытый исходный код, чтобы разработчики скачивали его копии и по-своему изменяли. Благодаря таким энтузиастам появляются новые версии программ.
- Это полезный ресурс для программистов при трудоустройстве. Сервис заменяет «портфолио» разработчика: человек может дать доступ к своему репозиторию и показать примеры хорошего кода.
Как создать репозиторий
Разберемся на примере GitLab.
Что такое репозитории и как ими пользоваться. 3.2. Курс «Git для начинающих»
Для начала работы нужно создать аккаунт. Это можно сделать на главной странице сайта: достаточно ввести имя, контактную почту и придумать пароль.
Доступна регистрация по одному клику через действующие аккаунты в Google, GitHub, Twitter, Bitbucket и Salesforce
После регистрации открывается окно с доступными действиями. Здесь можно создать новый проект или группу для совместной работы, отправиться изучать проекты других участников или узнать больше о работе GitLab.
У сервиса минималистичный интерфейс, в котором можно быстро разобраться
В новом окне нужно выбрать действие с проектом:
- Создать новый: подходящий вариант для нового репозитория. Останется задать имя и адрес, описание, доступность и конфигурацию проекта.
- Создать по готовому шаблону: достаточно выбрать цель проекта, и сервис создаст репозиторий с нужными настройками. Например, для работы с Android- или iOS-приложениями.
- Импортировать готовый с GitHub или Bitbucket.
- Подключить внешний репозиторий к GitLab CI/CD.
CI/CD — это «непрерывная интеграция и непрерывная поставка». При таком подходе в код вносят частые небольшие изменения, чтобы ускорить процесс коллективной работы.
Продвинутые пользователи могут создать проект через командную строку — это базовый инструмент работы с Git
После ввода основных параметров проекта остается нажать Create project, и репозиторий готов.
Для тех, кто не знает, как добавить репозиторий к уже существующим: нужно нажать на знак плюса в верхней части страницы и выбрать New project/repository.
По клику откроется меню с выбором, какой проект нужно создать
Как создать SSH-ключ
Как подключить репозиторий к облаку: для этого нужен SSH-ключ. Он позволяет не вводить данные пользователя при каждом коммите. Чтобы создать ключ, нужно:
- Скачать на компьютер Git-клиент.
- После установки клиента запустить его и ввести ssh-keygen в командной строке.
- Придумать имя для файла с ключом и запомнить путь сохранения. По умолчанию для Windows это ваша пользовательская папка.
- Придумать пароль для файла. Если пароль не нужен, пропустите шаг, нажав клавишу Enter.
- Получить два файла с ключом. Один — локальный только для вас, второй — публичный, для копирования. Git создает их автоматически.
Git записывает все ваши действия. Так можно проверить, какое имя файла вы задали и куда сохранили
Следующим шагом надо найти в вашей папке публичный ключ. У него будет расширение .pub — следует открыть его в текстовом редакторе и скопировать весь текст.
Далее нужно перейти к настройкам пользователя GitLab и выбрать раздел SSH Keys. Здесь нужно вставить скопированный текст в поле Key, задать имя и срок действия ключа и нажать Add key.
Новый SSH-ключ готов. Теперь с его помощью можно связать локальный репозиторий на компьютере с облачным в GitLab
Как клонировать репозиторий
Это действие нужно, чтобы подключить ключ. Чтобы клонировать репозиторий в GitLab:
- Откройте репозиторий.
- Нажмите кнопку Clone.
- Скопируйте ссылку Clone with SSH.
Эти данные нужно будет ввести в Git-клиент на компьютере.
Выводы
Репозиторий — функциональное средство для работы с кодом. Работа с Git-репозиторием в программировании не позволит потерять или безвозвратно испортить код. Любые правки всегда можно отменить.
Для работы с системой контроля репозиториев потребуется Git-клиент на компьютере — через него отправляют пакеты с кодом в облачное хранилище. Он бесплатный и доступен для разных операционных систем: Windows, Linux и macOS. Также во всех современных редакторах кода типа VS Code или Atom есть инструменты для работы с репозиториями и Git-платформами. Это может быть встроенная возможность или плагины.
- Как научиться читать код сайта и зачем это нужно, если вы не программист
- Как собрать IT-команду для небольшого бизнеса: какие именно специалисты нужны
- Что делать, если на страницах сайта возникают ошибки сервера
Источник: www.nic.ru
Что такое репозиторий?

Репозиторий – это централизованное цифровое хранилище, которое разработчики используют для внесения изменений в исходный код приложения и управления ими. При разработке программного обеспечения разработчики должны хранить папки, текстовые файлы и другие типы документов и обмениваться ими. Репозиторий обладает функциями, которые позволяют разработчикам легко отслеживать изменения в коде, одновременно редактировать файлы и эффективно вести совместную работу над одним и тем же проектом в любом местоположении.
Почему репозиторий важен
Репозиторий позволяет командам разработчиков программного обеспечения вносить многочисленные изменения в код программы без ущерба для основного исходного кода. Вместо того чтобы вносить изменения непосредственно в основную ветку, они используют функции в репозитории для редактирования и просмотра изменений. Это уменьшает конфликты при слиянии, когда два или более разработчика редактируют одну и ту же часть кода.
Разработчики также используют репозитории для внедрения новых функций или исправления ошибок без влияния на производственную версию приложения. Они создают новую ветвь или копию исходного кода в качестве локального хранилища для работы. Таким образом, разработчики обеспечивают надлежащее тестирование новых изменений перед их выпуском для клиентов.
Преимущества репозитория для бизнеса
Предприятия становятся более гибкими и быстро реагируют на меняющиеся запросы потребителей, когда используют репозитории для разработки приложений. Разработчики могут быстро работать над новыми функциями, не влияя на стабильность реального приложения. Репозитории позволяют им быстро вносить изменения и решать потенциальные проблемы. Организации также могут координировать задачи по разработке приложений между разработчиками, которые работают удаленно.
Что такое репозиторий GitHub
GitHub – это облачный репозиторий, который позволяет разработчикам организованно хранить коды проектов и работать над ними. GitHub построен на базе Git, системы контроля версий, и включает дополнительные функции, улучшающие сотрудничество между разработчиками. Он предоставляет графический пользовательский интерфейс, который упрощает использование функций хранилища.
GitHub также стал онлайн-сообществом разработчиков проектов с открытым исходным кодом. Разработчики могут общаться с коллегами, присоединяясь к обсуждению, предлагая помощь и делясь своим опытом на благо публичных проектов на GitHub.
Поскольку GitHub является наиболее популярным и часто используемым репозиторием среди сообществ разработчиков по всему миру, эта статья блога посвящена именно репозиториям GitHub.
Как работает репозиторий GitHub?
Репозиторий GitHub позволяет разработчикам удаленно и распределенно сотрудничать с локально установленным инструментом контроля версий. Разработчики используют интерфейс командной строки для реализации функций в Git – программе контроля версий.
Git позволяет разработчикам создавать, управлять и объединять изменения кода с основным исходным кодом.
Создание
Сначала разработчики создают новый репозиторий в директории проекта, содержащий файлы кода. В качестве альтернативы они могут клонировать Git-репозиторий из существующего. Репозиторий Git обычно содержит файл README, в котором отображается информация, описывающая проект.
Настройка
Перед внесением изменений в локальный репозиторий разработчики настраивают его, добавляя такую информацию, как имя пользователя и электронная почта. Это позволяет сотрудникам определить автора конкретного Git-репозитория. Затем разработчик может внести изменения в код и сохранить их с помощью команды git commit.
Изменение
Разработчики вносят изменения в код в своем репозитории. Первоначально изменения хранятся только в их локальной системе. Когда изменения готовы, они могут объединить их с центральным репозиторием. Если другой разработчик вносит изменения в тот же файл, он может вручную просмотреть и разрешить любые конфликты.

Какие основные возможности предлагает репозиторий GitHub
Репозитории GitHub предоставляют разработчикам централизованные возможности версионирования кода, обмена и совместной работы со следующими функциями.
Разветвления
Разветвления – это процесс создания копии репозитория на GitHub. По умолчанию репозиторий GitHub имеет основную ветвь, содержащую исходные коды и файлы, которые разработчики загружают изначально. Если им нужно изменить определенную часть кода, они создают ветку, содержащую полную копию файлов кода, и соответствующим образом маркируют эту ветку.
Разработчики могут создавать несколько ответвлений основного репозитория. Например, они могут создать ветку функций для написания кода для новых функций программного обеспечения и другую ветку для устранения проблем, о которых было сообщено.
Commit
Commit – это функция, позволяющая разработчикам сохранять все изменения, внесенные ими в файлы кода в ветке. GitHub позволяет разработчикам описывать новые изменения, которые они внесли в код, при их сохранении. Благодаря этому члены команды будут в курсе изменений и причин, по которым они были внесены.
Запрос на извлечение
Запрос на извлечение посылает официальное сообщение другим участникам, работающим над основной веткой, или владельцу ветки с просьбой рассмотреть сохраненные изменения. Соавторы могут просматривать, комментировать или вносить дополнительные изменения в исходный коммит, прежде чем отправить его на слияние. Когда они просматривают запрос на извлечение, вкладчики могут видеть изменения в исходном коде.
Слияние
Слияние – это процесс GitHub, который применяет сохраненные изменения к основной ветке. Это делается, когда члены команды просмотрели и одобрили сохраненные изменения. Затем они вызывают запрос на слияние на GitHub, который запускает серию проверок перед слиянием изменений с исходным кодом.
Каковы типы репозиториев Git?
Разработчики могут создавать два типа репозиториев Git с различными уровнями прав доступа.
Репозитории без операционной системы
Пустой репозиторий содержит только индексную папку. Разработчики не могут изменять файлы в пустом хранилище.
Непустые хранилища
Непустой репозиторий хранит копии исходных файлов, над которыми разработчики могут работать и в которых могут сохранять изменения.
Как AWS поддерживает ваши требования к репозиториям?
В Amazon Web Services (AWS) AWS CodeCommit – это онлайн-система версионирования кода, которую можно использовать для безопасного размещения частных репозиториев Git. CodeCommit интегрируется с существующими инструментами на базе Git, образуя бесшовный конвейер непрерывной доставки и непрерывной интеграции (CI/CD). Ниже приведены некоторые способы использования CodeCommit.
- Обеспечьте автоматическую защиту кода с помощью шифрования, независимо от того, находится он в пути или в состоянии покоя
- Держите свои репозитории ближе к среде AWS
- Настройте безопасные и масштабируемые рабочие процессы совместной работы над кодом в облаке AWS
Начните работу с репозиториями сегодня, зарегистрировав аккаунт AWS.
Источник: aws.amazon.com