Перейти к содержимому

Gitlab где хранятся репозитории

  • автор:

Как сделать поиск по всем файлам репозитория в gitlab?

Есть репозиторий, в котором проект с множеством файлов. Как мне сделать поиск по всему репозиторию, чтобы поиск произошел в каждом файле? Видел, что так делают, но самому подобный интерфейс найти не удалось.

Отслеживать
Anonymous Wizard
задан 2 авг 2023 в 11:39
Anonymous Wizard Anonymous Wizard
115 8 8 бронзовых знаков

Прямо в репозитории есть кнопка «FInd file», ее недостаточно? Она игнорирует пути и показывает все файлы (но вместе с путями)

3 авг 2023 в 5:13
@AidarSaifutdinov это кнопка ищет файлы, а мне необходимо выполнить поиск по их содержимому
3 авг 2023 в 8:23
Попробуй в поиске просто ввести код, там откроется поиск по коду, у меня сработало!
3 авг 2023 в 9:16
@AidarSaifutdinov получилось, спасибо большое!
3 авг 2023 в 9:43

0

Сортировка: Сброс на вариант по умолчанию

Знаете кого-то, кто может ответить? Поделитесь ссылкой на этот вопрос по почте, через Твиттер или Facebook.

    Важное на Мете
Похожие

Подписаться на ленту

Лента вопроса

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

Дизайн сайта / логотип © 2024 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2024.1.3.2953

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

GitLab: склонировать список репозиториев

Решил слегка “причесать” и обобщить свой опыт по этому вопросу. Чтобы удобней было пользоваться, как этакой краткой инструкцией, а не искать разрозненные ответы на SO и т.п.

Задача проста – сделать удобно 🙂

  • Взять GitLab (много где используется, как self-hosted) и выкачать с него все репозитории проекта. Чтобы можно было локально работать с ними, не загружая каждый отдельно.
  • Обновлять эти репозитории одной командой

Загрузка списка репозиториев с GitLab

Тут всё несложно – надо получить сам список и по нему всё скачать. Удобнее это делать с использованием ssh ключа (добавляется в GitLab через веб-интерфейс). Но можно и git credentials включить. Сам список достаточно просто в браузере открыть и сохранить projects.json (название по умолчанию).

  • Список репозиториев: https://your-gitlab-host/api/v4/projects?per_page=1000
  • Или список для группы проектов: https://your-gitlab-host/api/v4/groups//projects?per_page=1000

group-id можно тоже через веб-интерфейс посмотреть, примерно так:

GitLab project group ID

  • Выкачать (в текущий каталог) репозитории по списку из файла: jq -r ‘.[].ssh_url_to_repo’ < /path/to/projects.json | xargs -n1 git clone. Можно аналоги утилиты jq использовать, мне она привычней.
  • Если авторизация по ssh-ключу не настроена – придется из json вместо поля ssh_url_to_repo извлекать поле http_url_to_repo. Можно хранить логин/пароль для GitLab в ~/.git-credentials (там они лежат в открытом виде!).

Первая часть на этом закончена. На очереди – обновление репозиториев.

Обновление списка репозиториев

Здесь всё ещё проще – достаточно одной команды. Перейти в каталог со склонированными репозиториями и выполнить:

find . -type d -name ‘.git’ \ | xargs -n1 — sh -c \ ‘cd «$<0>/..» && echo \ && basename -sa $(git rev-parse —show-toplevel) \ && git pull —all’

Найдёт все каталоги с директорией .git внутри (а это и есть репозитории) и обновит их через git pull —all. Соответственно, каталоги, не являющиеся репозиториями, будут проигнорированы. Готово!

Что такое GitLab и для чего он нужен

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

gitlab что это такое

Git, GitHub и GitLab

Всем, кто занимается разработкой, знакомы слова Git, Github и GitLab. Несмотря на видимое сходство, это разные вещи и прежде, чем перейти конкретно к GitLab, разберём, в чём их отличие.

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

GitHub и GitLab — это онлайн-сервисы, которые служат для размещения репозиториев, дистанционного управления и прочих задач, связанных с разработкой. В них есть функционал отслеживания ошибок, Wiki для всех проектов, история изменений и многое другое.

Сервисы имеют схожее назначение, поэтому и функции у них примерно одинаковы. Однако, есть и отличия.

    .
  • В GitLab предусмотрена бесплатная непрерывная интеграция. В GitHub вместо этого есть инструмент Actions, который позволяет запускать подобные интеграции в общедоступных репозиториях без оплаты, в частных – платно.
  • GitLab, в отличие от GitHub имеет встроенную платформу развёртывания Kubernetes.
  • В GitLab доступны бесплатные репозитории для проектов с общедоступным исходным кодом. В GitHub такого не предусмотрено.

Бесплатный тестовый доступ к облаку на 30 днейПолучить

Что такое GitLab

Как говорилось выше, GitLab является сервисом для совместной разработки. Он помогает командам разработчиков сократить жизненный цикл продукта и повысить производительность. Здесь не требуется авторизация для каждого отдельного инструмента. Разрешения устанавливаются один раз, и все в организации имеют доступ к каждому компоненту.

Изначально GitLab был полностью бесплатным программным обеспечением с открытым исходным кодом, который распространялся по лицензии MIT. В 2013 году его разбили на две отдельные версии — GitLab CE (Community Edition) и GitLab EE (Enterprise Edition). GitLab CE осталась прежней, а GitLab EE поучил ограниченную лицензию, хотя исходный код так и остался общедоступным.

GitLab даёт нижеописанные возможности:

  • Создание. Написание кода, управление им и внесение правок, синхронизация файлов.
  • Проверка. Включены инструменты CI/CD, доступна интеграция с Github, есть проверка качества написания кода, нагрузочные тесты.
  • Управление. Для доступа к проекту нужно пройти двухфакторную аутентификацию. Также доступна поддержка токенов и SSO. Сервис осуществляет аналитику продуктивности участников, предоставляет трекинг задач.
  • Мониторинг. Отслеживание производительности приложений, управление инцидентами, отправка логов.
  • Планирование. Отслеживание проблем и контроль затраченного времени.
  • Упаковка. Управление контейнерами и репозиториями. Работа Gitlab с Docker.
  • Безопасность. Сканирование уязвимостей, поддержка SAST и DAST.
  • Релизы. Есть возможность запускать CI/CD в разных окружениях, доступны канареечные релизы (безопасное тестирование кода или частичный выпуск), оркестровка релизов.
  • Конфигурирование. Поддержка Kubernetes, бессерверные вычисления.
  • Защита. Обеспечение сетевой безопасности проектов.

Зачем использовать GitLab

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

Где лучше всего хранить репозиторий Git?

Мы небольшой распределенной командой беремся за разработку крупного проекта Unity. До сих пор работал с BitBucket, но на последнем проекте сайт уже стал нас предупреждать, что у нас слишком большой репозиторий и он не должен превышать 2Gb. Поскольку проект у нас содержит много бинарных данных (модели, текстуры, видео и т.п.) размер его может расти существенно. Поделитесь опытом кто где хранит свои репозитории? Как решаете вопросы с безопасностью? Буду рад любой полезной информации.

Отслеживать
25.1k 4 4 золотых знака 46 46 серебряных знаков 81 81 бронзовый знак
задан 20 фев 2017 в 17:19
2,680 1 1 золотой знак 12 12 серебряных знаков 27 27 бронзовых знаков
GitHub за 7$ в месяц ничем вас не ограничивает 🙂
20 фев 2017 в 17:21
GitLab.com storage limit raised to 10GB per repo
20 фев 2017 в 17:25
Может не стоило нагружать репу бинарными артифактами?
20 фев 2017 в 17:30
Gitlab можно поднять на своём сервере…
20 фев 2017 в 18:30

Может быть выделить место в своем серваке, сделать там чистый репозиторий, дать доступ нужным людям и не париться

20 фев 2017 в 18:44

2 ответа 2

Сортировка: Сброс на вариант по умолчанию

Хм, не забрасывайте камнями но я храню их в cloud.mail.ru

как альтернатива яндекс.диск.

#Создаем локальный репозиторий mkdir /mnt/data/Project/test_repo cd /mnt/data/Project/test_repo git init #Создаем файл hello_world.txt c произвольным содержимым touch hello_world.txt nano hello_world.txt #Помещаем только что созданный файл под контроль Git git add . #Фиксируем изменения git commit -m "First commit" #Создаем удаленный репозиторий mkdir /mnt/data/Яндекс.Диск/git_repo/test_repo.git cd /mnt/data/Яндекс.Диск/git_repo/test_repo.git #Создаем репозиторий без рабочей копии git init --bare #Возвращаемся в локальный репозиторий cd /mnt/data/Project/test_repo #В локальном репозитории указываем где искать удаленный #yandex_disk - псевдоним для полного пути к удаленному репозиторию git remote add yandex_disk /mnt/data/Яндекс.Диск/git_repo/test_repo.git #Передаем изменения из локального репозитория в удаленный #master - текущая ветка разработки git push yandex_disk master 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *