Какова наилучшая практика использования GIT, когда апстрим является 100% CVS?
Мне любопытно, какова лучшая практика сохранения вашего случайного вклада в проект OSS в git (например, в github/bitbucket/gitlab), в то время как основной веткой разработки является исключительно CVS.
Я считаю, что очень удобно просто совершить CVS/{Entries,Repository,Root}
прямо в git
, а затем в любое время и из любого ящика вы можете просто оформить свое git-репо (w / git
), а затем обновите реальный апстрим с помощью cvs up
, что именно то, что я делаю с моей вилкой портов-readmes OpenBSD, а также mdocml.
Однако я заметил, что большинство людей весьма удивлены и озадачены, увидев эти файлы CVS в этих git-репозиториях на моем GitHub, предположительно думая, что это своего рода упущение с моей стороны. Кроме того, httpd Рейка, например, также не имеет такой настройки, хотя он, по-видимому, обычно обновляет его из апстрима в массовом порядке, не сохраняя при этом лог из апстрима.
Я что-то здесь упускаю? Я чувствую, что CVS/{Entries,Repository,Root}
в вашем git-репозитории есть отличная идея, но я никогда не видел, чтобы кто-то другой делал это. Зачем?
1 ответ
Я чувствую, что иметь CVS/{Entries,Repository,Root} в вашем git-репозитории - отличная идея, но я никогда не видел, чтобы кто-нибудь еще делал это. Зачем?
Это кажется хорошей идеей, но она также смешивает метаданные (ссылка на CVS) с данными (ваши файлы репо).
Поэтому git-svn
Например, запомните этот тип ссылки в конфигурации git (локальный конфигурационный файл, а не часть репо).
Любой, кто хочет внести свой вклад в репозиторий SVN, должен git svn clone
снова.
Промежуточным решением было бы объяснить в README
что пользователю необходимо создать эти ссылочные файлы CVS после того, как репозиторий будет клонирован, если он / она желает внести свой вклад обратно в (CVS) апстрим.