В основном, что он говорит о жестяном: TortoiseHg работает медленно.
Недавно моя команда переехала из Subversion в Mercurial. (Частично использовать Kiln для обзоров кодов). Одна из вещей, которые мы заметили, заключается в том, что взаимодействие с Mercurial через TortoiseHg очень медленное. Некоторая статистика:
- Open TortoiseHg Workbench: 8 минут 13 секунд
- Время отклика при нажатии на ревизию: 2,8 секунды
- Время "Обновить текущий репозиторий": 6.4 секунды
- Время проверки входящих изменений: 12.8 секунд
Все это действительно добавляет к очень медленному ощущению. Для справки, вот время инструмента командной строки:
-
hg status
: 4.573 секунды -
hg incoming
: 12.150 секунд
Время командной строки, похоже, сокращается со временем рабочего места, но рабочий стол делает задержку гораздо более расстраивающей, поскольку она синхронна с использованием программы. Например, типичная задача - "получить последние вещи, которые мой коллега просто нажал". Это выглядит так (только перечисление времени, проведенного на компьютере, округленное):
- Открыть TortoiseHg: 10 минут.
- Откройте соответствующий репозиторий, дважды щелкнув его в репозитории реестра: 5 секунд.
- Зафиксировать локальные изменения, которые необходимо выполнить:
- Нажмите "Рабочий каталог": 5 секунд.
- Выберите важные файлы и введите сообщение фиксации.
- Нажмите "Зафиксировать": 20 секунд.
- Получить изменения коллектива:
- Проверьте наличие входящих наборов изменений: 10 секунд.
- Просмотрите их.
- Принять входящие изменения: 40 секунд.
- Стеллажи уже не изменились:
- Открыть диалоговое окно Shelve: 2 секунды.
- Остальные файлы Shelve: 6 минут
- Обновить: 5 секунд.
- Merge:
- Нажмите другую голову: 3 секунды.
- Объединить с локальным:
- Подождите, пока проверка "Clean": 15 секунд.
- Ожидание слияния (при отсутствии конфликтов): 10 секунд.
- Зафиксировать: 30 секунд.
- Отменить изменения:
- Открыть диалоговое окно Shelve: 2 секунды.
- Unshelve: 6 минут.
- Обновить: 5 секунд.
Всего: 24 минуты, 32 секунды.
Двенадцать из этих минут потрачены на стеллажи и демонтаж. Десять - только открытие. Одним из следствий этого является то, что люди склонны совершать вещи, которые они не уверены, будут куда угодно, чтобы избежать расходов на стеллажи. Но даже если вы не принимаете никаких стеллажей и не открываете стоимость (возможно, вы просто оставите ее открытой), все равно требуется 2 с половиной минуты тщательного нажатия, чтобы получить последние материалы.
И это даже не учитывает более значимые вещи, такие как клонирование и многое другое. Все это медленно.
У меня есть:
- Отключенный антивирус.
- Отключено индексирование.
- Rebooted.
- Пробовал это на 3 разных версиях окон.
- Пробовал на разных аппаратных средствах, большинство из них разумное качество: Core 2 Duo @3,16 ГГц, 8 Гб RAM.
- Пробовал его на 32 и 64-разрядных ОС.
- Попробовал отключить его от сети.
Репозиторий фактически представляет собой два репозитория: первичное репо и субрепо, в котором содержатся все наши сторонние двоичные файлы. Папка .hg
основного репо - 676 МБ. Папка .hg
для суб-репо составляет 641 МБ. Содержимое default
в первичной репо составляет 7.05 ГБ. Содержимое default
в суб-репо составляет 642 МБ. Средний размер файла в основном репо составляет 563 КБ. Максимальный размер файла в основном репо составляет 170 МБ. В основном репо есть 13 438 файлов. Средний размер файла в субрепо составляет 23 КБ. Максимальный размер файла в суб-репо составляет 132 МБ. В суб-репо есть 57087 файлов.
У меня есть варианты с большим нажатием, футляром, выборкой, гештальтом, kbfiles, обжигом, кильватой, кильватом, мк, чисткой и расширением трансплантата.
Любые идеи, где начинать выяснять, как ускорить работу? Медленность сводит нас с ума.