Как почистить репозиторий ubuntu

Добавить, удалить репозиторий в Ubuntu

Репозиторий в Ubuntu (Linux) – это хранилище программного обеспечения. Установочные файлы хранятся на специальном сервере, к которому можно обращаться по мере необходимости. Добавляя репозиторий, вы загружаете список, называемый индексом, который содержит информацию о программах, представленных на ресурсе.

Если вам потребуется установить какой-либо софт, достаточно просто выбрать нужное приложение из списка. Центр приложений самостоятельно загрузит все необходимые пакеты и библиотеки и установит программу.

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

Добавление репозитория в Ubuntu

По умолчанию в Ubuntu уже подключен базовый источник приложений. Если его недостаточно, можно установить дополнительные репозитории. Все действия рассматриваются на примере ОС версии 15.04 со стандартным окружением рабочего стола Unity .

Подключение репозитория через графический интерфейс:

  1. Откройте «Параметры системы» с помощью значка в виде зубчатого колеса в правой верхней части рабочего стола.
  2. Зайдите в раздел «Программы и обновления».

  1. Откройте вкладку «Другое ПО».
  2. Нажмите «Добавить…» и укажите адрес хранилища, например «deb http://dl. google. com/linux/chrome/deb/ stable main» (Это репозиторий Google Chrome ).
  1. Теперь необходимо обновить индексы системы. Закройте настройки и в выскочившем окне нажмите «Обновить».

Подключение с помощью командной строки:

  1. Вызовите терминал (например с помощью комбинации клавиш Alt + Ctrl + T ) .
  2. Введите (или скопируйте) команду

sudo apt — add — repository « deb http :// dl . google . com / linux / chrome / deb / stable main»

и нажмите Enter . Это команда добавляет хранилище в систему.

Терминал может запросить ваш пароль, его необходимо ввести и нажать Enter .

  1. Введите команду

чтобы обновить индексы.

Вы также можете просмотреть список подключенных репозиториев с помощью строки

Данная команда откроет в терминале список всех подключенных источников. (Для того чтобы выйти из редактора nano нажмите Ctrl+Z)

Удаление репозитория в Ubuntu

С помощью графического интерфейса:

  1. Как и в случае с подключением, откройте раздел «Программы и обновления», вкладку «Другое ПО».
  2. Выберите нужный объект из списка и нажмите «Удалить».

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

Удаление через командную строку:

  1. Запустите терминал.
  2. Введите строку

http://itfound. ru/132-dobavit-udalit-repozitoriy-ubuntu. html

Форум русскоязычного сообщества Ubuntu

Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

  • Форум русскоязычного сообщества Ubuntu »
  • Архив »
  • Архив »
  • Архив тем до 2016г »
  • Как узнать список пакетов в репозитории?

Автор Тема: Как узнать список пакетов в репозитории? (Прочитано 22421 раз)

0 Пользователей и 1 Гость просматривают эту тему.

  • Форум русскоязычного сообщества Ubuntu »
  • Архив »
  • Архив »
  • Архив тем до 2016г »
  • Как узнать список пакетов в репозитории?

Страница сгенерирована за 0.319 секунд. Запросов: 22.

  • Сайт
  • Об Ubuntu
  • Скачать Ubuntu
  • Семейство Ubuntu
  • Новости
  • Форум
  • Помощь
  • Правила
  • Документация
  • Пользовательская документация
  • Официальная документация
  • Семейство Ubuntu
  • Материалы для загрузки
  • Совместимость с оборудованием
  • RSS лента
  • Сообщество
  • Наши проекты
  • Местные сообщества
  • Перевод Ubuntu
  • Тестирование
  • RSS лента

© 2012 Ubuntu-ru — Русскоязычное сообщество Ubuntu Linux.
© 2012 Canonical Ltd. Ubuntu и Canonical являются зарегистрированными торговыми знаками Canonical Ltd.

http://forum. ubuntu. ru/index. php? topic=133835.0

очистить гит репозиторий от удалённых файлов

Исторически возник большой репозиторий с несколькими десятками слабо связанных проектов. Начитался что разделить можно просто склонировав репозиторий и удалив ненужные проекты. Склонировал, удалил. В проекте осталась только нужная папка, всё удалённое закомиттил, но папка. git разрослась больше полугигабайта. При том что сам проект мегабайт 50.

Можно ли как-то почистить репозиторий от удалённых файлов и их истории?

3 ответа 3

Для большого количества файлов или небольшого репозитория можно попробовать git filter-branch (см ответ от Arhad).

Для большого количества файлов, массовых чисток, или удаления случайно вкоммитанных паролей стоит использовать утилиту BFG Repo-Cleaner .

Она позволяет массово переписывать историю, и делает это очень быстро. На порядок быстрее git filter-branch . git filter-branch приходится вызывать для каждого файла, и он заново пересчитывает историю для каждого файла. Если файлов больше двух, это занимает вечность. Repo-Cleaner делает все за один проход.

Из базовых примеров:

Удаления файлов по маске:

Удаление папки целиком

Удаление больших файлов

BFG по умолчанию не удаляет блобы в текущей ветке ( HEAD ), так что она идеально подходит для массовых чисток и переписывания истории без риска запороть последний коммит.

В качестве гайда можно воспользоваться справкой GitHub по чистке репозиториев:

Для того, чтобы удалить все упоминания конкретного файла из истории репозитория необходимо воспользоваться командой git filter-branch :

где — это путь до удаляемого файла относительно текущей папки (не корня репозитория!).

Учтите, что эта команда занимается переписыванием истории. То есть она берёт старое дерево и переносит его в новую копию, коммит за коммитом, после чего переназначает текущую указатель-ветку. Поэтому она работает очень медленно (около секунды на перенос одного коммита).

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

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

Рвём все связи старых (исходных) коммитов с git reflog , чтобы сделать их недостижимыми:

Удаляем все недостижимые объекты (и упаковываем оставшиеся):

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

http://ru. stackoverflow. com/questions/816307/%D0%BE%D1%87%D0%B8%D1%81%D1%82%D0%B8%D1%82%D1%8C-%D0%B3%D0%B8%D1%82-%D1%80%D0%B5%D0%BF%D0%BE%D0%B7%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%B9-%D0%BE%D1%82-%D1%83%D0%B4%D0%B0%D0%BB%D1%91%D0%BD%D0%BD%D1%8B%D1%85-%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2