Начните работать с AWS бесплатно

Создать бесплатный аккаунт

Получите доступ к уровню бесплатного пользования AWS на год, включая преимущества базовой поддержки AWS Basic Support: круглосуточное обслуживание клиентов (без праздников и выходных), форумы и многое другое.
Сведения об уровне бесплатного пользования AWS »


Вопрос: Что такое AWS CodeCommit?
AWS CodeCommit – это безопасный и высокомасштабируемый автоматизированный сервис управления исходным кодом с хостингом частных репозиториев Git. С AWS CodeCommit вам не придется создавать собственную систему управления исходным кодом и заниматься масштабированием инфраструктуры для нее. AWS CodeCommit обеспечивает хранение любых ресурсов, от исходного кода до исполняемых файлов. Сервис эффективно интегрируется с существующими инструментами Git.

Вопрос: Что такое Git?
Git – это распределенная система управления версиями с открытым исходным кодом. Для работы с репозиториями AWS CodeCommit можно воспользоваться интерфейсом командной строки Git или любым подходящим клиентом Git. Подробные сведения о Git см. в документации Git. Подробные сведения о работе с AWS CodeCommit и Git см. на странице Начало работы с AWS CodeCommit.

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

Вопрос: Чем сервис AWS CodeCommit отличается от других систем управления исходным кодом на основе Git?
AWS CodeCommit предоставляет целый ряд возможностей, недоступных в других системах управления исходным кодом на основе Git.

  • Полностью управляемый сервис. С AWS CodeCommit вам не придется заниматься размещением, обслуживанием, резервным копированием и масштабированием собственных серверов управления исходным кодом.
  • Безопасность. Сервис AWS CodeCommit автоматически выполняет шифрование файлов при пересылке и хранении. AWS CodeCommit интегрирован с сервисом AWS Identity and Access Management (IAM), что позволяет назначать разрешения для ваших репозиториев на уровне пользователей.
  • Высокая доступность. AWS CodeCommit работает на основе высокомасштабируемых, избыточных и надежных сервисов AWS, таких как Amazon S3 и Amazon DynamoDB.
  • Масштабируемость. AWS CodeCommit позволяет хранить любое количество файлов без ограничений объема репозиториев.
  • Ускоренный жизненный цикл разработки. С AWS CodeCommit ваши репозитории будут находиться в облаке AWS, в непосредственной близости от сред разработки и отладки, а также рабочей среды. Это повышает скорость жизненного цикла разработки и частоту обновлений.

Вопрос: Чем AWS CodeCommit отличается от корзины S3 с поддержкой управления версиями?
AWS CodeCommit предусматривает совместную разработку программного обеспечения. Он управляет пакетами изменений множества файлов, обеспечивает параллельную разработку и сравнение версий. Функция управления версиями сервиса Amazon S3 обеспечивает восстановление предыдущих версий отдельных файлов, но не поддерживает отслеживание пакетов изменений, охватывающих множество файлов, и другие возможности, требуемые для совместной разработки программного обеспечения.

Что такое Git? Git – это распределенная система управления версиями с открытым исходным кодом. Для работы с репозиториями AWS CodeCommit можно воспользоваться интерфейсом командной строки Git или любым подходящим клиентом Git. Подробные сведения о Git см. в документации Git. Подробные сведения о работе с AWS CodeCommit и Git см. на странице «Начало работы с AWS CodeCommit».

Вопрос: Как начать работу с AWS CodeCommit?
Вы можете войти в Консоль управления AWS, создать репозиторий и начать работу с ним с помощью Git. Для знакомства с сервисом перейдите на страницу Начало работы, где приводится пошаговое руководство.

Вопрос: Как создать репозиторий?
Чтобы создать репозиторий, воспользуйтесь Консолью управления AWS, интерфейсом командной строки AWS, AWS SDK или API сервиса AWS CodeCommit.

Вопрос: Как обновлять файлы в репозитории?
Для работы с репозиторием используется Git. Например, для создания локальной копии репозитория AWS CodeCommit можно воспользоваться командой git clone. Внесите изменения в локальные файлы и запустите команду git commit, чтобы сохранить изменения. Наконец, воспользуйтесь командой git push для загрузки изменений в репозиторий AWS CodeCommit. Пошаговые инструкции см. на странице Начало работы с AWS CodeCommit.

Вопрос: Как импортировать существующий репозиторий в AWS CodeCommit?
С помощью Git можно импортировать в AWS CodeCommit любой существующий репозиторий Git. Другие репозитории, например Subversion или Perforce, сначала нужно перенести в репозиторий Git с помощью инструмента импорта Git. Пошаговые инструкции по импорту репозиториев Git см. на странице Перенос существующего репозитория в AWS CodeCommit. Инструкции по переносу в Git других репозиториев см. в документации Git по переносу.

Вопрос: Какие операции Git в настоящее время поддерживает сервис AWS CodeCommit?
AWS CodeCommit в настоящее время поддерживает команды clone, pull, push и fetch.

Вопрос: Поддерживает ли AWS CodeCommit подмодули Git?
Да. AWS CodeCommit можно использовать с репозиториями Git, содержащими подмодули.

Вопрос: Каковы ограничения сервиса AWS CodeCommit?
Сведения об ограничениях сервиса см. на странице Ограничения.

Вопрос: Какой максимальный размер отдельного файла допустим для сохранения его в CodeCommit?
Размер отдельного файла в репозитории может составлять не более 2 ГБ.

Вопрос: Как выполнять резервное копирование репозиториев?
Для восстановления данных можно использовать полную локальную копию репозитория, созданную командой git clone. Дополнительные резервные копии можно создавать разными способами. Один из них заключается в установке Git на сервере резервного копирования и запуске задания планировщика с использованием команды git clone для регулярного создания снимков состояния репозитория. Вы можете воспользоваться командой git pull вместо команды git clone, если требуется копировать только инкрементные изменения. Обратите внимание, что использование этих операций может увеличить затраты на количество пользователей и/или запросов в зависимости от ваших настроек сервера резервного копирования и частоты опросов.

Вопрос: Как восстановить удаленный репозиторий AWS CodeCommit?
Удаление репозитория AWS CodeCommit является необратимой операцией стирания данных. Для восстановления репозитория, который был удален, потребуется создать репозиторий заново и загрузить в него данные из резервной или локальной копии, полученной путем полного клонирования. Для ограничения круга пользователей с правами удаления репозиториев рекомендуется использовать политики IAM и защиту посредством многофакторной аутентификации. Подробности см. в ответе на вопрос «Можно ли использовать AWS Identity and Access Management (IAM) для управления доступом к AWS CodeCommit?»  в разделе «Безопасность» на этой странице вопросов и ответов.

Вопрос: Как выполнять проверку кода в AWS CodeCommit?
Для проверки кода можно использовать любую совместимую с Git систему проверки кода, например Review Board.

Вопрос: Как интегрировать систему непрерывной интеграции с сервисом AWS CodeCommit?
Системы непрерывной интеграции можно настраивать для извлечения кода из AWS CodeCommit с помощью Git. Примеры использования систем непрерывной интеграции с сервисом AWS CodeCommit см. в публикации в блоге, посвященной интеграции AWS CodeCommit с Jenkins.

Вопрос: Как создавать объекты webhook с помощью AWS CodeCommit?
В консоли Amazon Simple Notification Service (SNS) можно создать тему SNS, указав для нее адрес сервера HTTP и URL для объекта webhook. Затем в консоли AWS CodeCommit вы сможете связать эту тему SNS с событием в репозитории с помощью триггеров.

Вопрос: Можно ли получить журнал всех вызовов API и операций Git AWS CodeCommit своего аккаунта для анализа уровня безопасности и текущего устранения неполадок?
Да. Для получения истории вызовов API и операций Git AWS CodeCommit своего аккаунта просто включите сервис AWS CloudTrail в Консоли управления AWS. Регистрация отдельных подтверждений записи в операциях Git push в настоящее время не поддерживается. Подробности см. в Руководстве пользователя по CloudTrail.

Вопрос: Можно ли использовать AWS Identity and Access Management (IAM) для управления доступом к AWS CodeCommit?
Да. AWS CodeCommit поддерживает разрешения на уровне ресурсов. Для каждого репозитория AWS CodeCommit можно указать действия, разрешенные определенным пользователям. Можно также использовать для действий CodeCommit многофакторную аутентификацию (MFA) AWS. Это обеспечивает дополнительный уровень защиты от разрушительных действий, таких как удаление репозиториев. Можно установить контроль доступа клиентов Git не только к API AWS CodeCommit, но и к командам git pull и git push. К примеру, можно создать пользователя репозитория с правами только для чтения, разрешив ему выполнение команды git pull, но не команды git push. Подробнее об использовании сервиса IAM с AWS CodeCommit см. в разделе Справка по разрешениям доступа. Подробнее об аутентификации доступа к API с использованием многофакторной аутентификации см. в разделе Настройка доступа к API с защитой посредством MFA.

Вопрос: Какие протоколы передачи данных поддерживает AWS CodeCommit?
Для обмена данными с AWS CodeCommit можно использовать как HTTPS, так и SSH. Для использования протокола HTTPS сначала необходимо установить интерфейс командной строки AWS. Интерфейс командной строки AWS позволяет установить Git credential helper, настраиваемый с использованием данных доступа AWS. Он автоматически подписывает все запросы HTTPS к AWS CodeCommit цифровой подписью в спецификации Signature Version 4. Для использования протокола SSH пользователи создают собственные пары публичных и частных ключей и добавляют публичные ключи к своим пользователям IAM. Частный ключ обеспечивает шифрование обмена данными с AWS CodeCommit. Пошаговые инструкции по настройке доступа по HTTPS и SSH см. на странице Настройка AWS CodeCommit.

Вопрос: Какие порты должны быть открыты в брандмауэре для доступа к AWS CodeCommit?
Вам потребуется открыть исходящий доступ в адрес сервиса AWS CodeCommit для порта 22 (SSH) или 443 (HTTPS).

Вопрос: Как можно шифровать репозитории в AWS CodeCommit?
Шифрование репозиториев при хранении выполняется автоматически. От пользователя не требуется дополнительных действий. Для шифрования репозиториев сервис AWS CodeCommit использует AWS Key Management Service (KMS). При создании первого репозитория в вашем аккаунте AWS будет создан ключ CodeCommit под управлением AWS. Подробнее см. на странице Шифрование репозиториев AWS CodeCommit.

Вопрос: Можно ли разрешить доступ к репозиторию для нескольких аккаунтов?
Да. Вы можете создать в своем аккаунте AWS роль IAM для предоставления доступа к репозиторию пользователям IAM других аккаунтов AWS. После этого пользователи IAM могут настроить свой интерфейс командной строки AWS для работы с сервисом AWS Security Token Service (STS) и использовать данную роль при запуске команд. Подробнее см. в разделе Использование роли документации по интерфейсу командной строки AWS.

Вопрос: В каких регионах доступен сервис AWS CodeCommit?
Дополнительные сведения о доступности сервиса CodeCommit по регионам см. на странице Продукты и сервисы по регионам.

Вопрос: Какова стоимость использования сервиса AWS CodeCommit?
Стоимость использования сервиса AWS CodeCommit составляет 1 USD за одного активного пользователя в месяц. На каждого активного пользователя ваш аккаунт дополнительно получает 10 ГБ хранилища и 2000 запросов Git в месяц. Неиспользованный объем хранилища и неиспользованное количество запросов Git не переносятся на следующие месяцы. Если вам потребуется больше ресурсов хранилища или запросов Git для ваших пользователей, дополнительное использование будет оплачиваться по тарифу 0,06 USD за 1 ГБ в месяц и 0,001 USD за запрос Git. Пользователи могут хранить любое количество репозиториев Git. Объем использованных вами ресурсов рассчитывается каждый месяц суммарно по всем регионам и автоматически включается в ваш счет. Подробнее см. на странице цен.

Вопрос: Что такое активный пользователь в AWS CodeCommit?
Активный пользователь – это любое уникальное удостоверение AWS (пользователь или роль IAM, федеративный пользователь или учетная запись root), которое в течение месяца обращалось к репозиториям AWS CodeCommit посредством запросов Git или Консоли управления AWS. Сервер, который обращается к CodeCommit с помощью уникального удостоверения AWS, считается активным пользователем.

Вопрос: Какие запросы Git засчитываются в ежемесячный объем использования?
Запросы Git включают любые операции push или pull, которые передают объекты репозитория. Запрос не входит в ваш объем использования запросов Git, если при обновлении локальной или удаленной ветвей кода не происходит передачи объекта.