Будет ли слишком много тегов вызывать какие-либо проблемы в Git?
Мне нужно создать несколько тегов каждый день в репозитории Git.
Когда у меня будет много тегов, будет ли это сделать репозиторий вялым или вызвать другие проблемы?
Примечание. Я использую GitHub, но, пожалуйста, ответьте в целом.
Ответ 1
(аннотированные) теги не сделают Git вялым, только сложнее использовать, поскольку вам будет труднее найти соответствующие теги среди всех промежуточных.
В худшем случае он может сделать ваш веб-интерфейс (например, GitHub) вялым, если он должен отображать тысячи тегов.
Возможно, все те теги не нужно толкать, и в этом случае вы могли бы рассмотреть возможность создания промежуточных локальных "Легких" тегов.
Ответ 2
Используя Git 2.8.1 в Windows, я испытывал небольшую медлительность от некоторых команд, когда есть много тегов (15000 или около того), включая:
git log (с --decorate)
git status
Просмотр истории в Visual Studio.
Использование командной строки, когда голова отключена (поскольку Git Bash довольно печатает текущую ревизию рядом с текущей директорией).
Все эти команды проверяют теги для украшения показанных ревизий. Каждая из этих команд занимает примерно 1-2 секунды дольше, чем без тегов.
Обновление: Запуск git gc (без --prune как я был) значительно ускорил Git. Настоящим виновником могло быть частое перебазирование.
Ответ 3
Если вы используете windows/cmd, вы получите эту ошибку "fatal: too many params", если вы используете одиночные кавычки в своей команде. Например. git tag -a ann_v1.1 -m 'Annotated tag v1.1'. Чтобы исправить это, вместо этого используйте двойные кавычки. Эта единственная цитата вызывает проблемы и в других местах. Например. git commit -m 'dangerous stuff' приведет к ошибке - ошибка: pathspec "опасный" не соответствует файлам, известным git.