Одна проблема, которую он решает: Код проще, чем lambda для вызова в конструкторе, который использует функцию выходного параметра для инициализации члена const
Вы можете инициализировать член const вашего класс, с вызовом функции, которая устанавливает его значение, возвращая свой вывод в качестве выходного параметра.
Мы думаем о переходе с хранилища на git. Я написал конвертер vault2git, который заботится об истории и удаляет привязки к хранилищу из файлов * .sln, * .csproj.
После того, как у вас есть репозиторий git, появляется git2svn.
Я знаю, что это похоже на обход, но может быстрее, чем писать vault2svn с нуля.
Если Вы хотите историю полной версии, можно хотеть просто записать сценарий, который проверяет каждую версию от хранилища и регистрирует ее с комментариями к Подрывной деятельности.
https://www.mercurial-scm.org/wiki/GenericConversion является хорошим примером
На основе документации, которую я видел на веб-сайте Хранилища, изучите командную строку GETVERSION.
Использование Ваш любимый язык сценариев... Реализуйте следующий процесс:
Я никогда не находил простой способ преобразовать от Хранилища до svn. В основном мы взяли наши последние ответвления и соединительную линию и запустились новый в svn. Честно я пошел две или три маркировки назад, просто так. Я имел в наличии дб хранилища в течение шести месяцев, и мы никогда не должны были возвращаться к нему для данных. Таким образом, я предполагаю, что Вы хотите продвинуть свою историю для принудительного ассортимента средства отслеживания ошибки; в это то же время мы передали наш выдающийся список ошибки новому средству отслеживания, так, чтобы определенно сделанные более удобные вещи. Если мы, где, оставаясь с тем же средством отслеживания ошибки, я думал бы, что мы будем запущенных новый экземпляр его для нового repo.Удачи!
Brett
Бесплатно. Стоимость лицензии пользователя на хранилище утроилась с тех пор, как мы туда пошли.
Мы также рассматриваем миграцию. Одной из причин является стоимость, но другая причина заключается в том, что Vault не использует действительный xml (или любой другой) для комментариев коммитов, поэтому специальные символы не работают в нашей автоматизированной системе сборки CCNet (например, символ маркера является одним из них и, в частности, вызывает у нас проблему) , Способом обойти это было A) попросить наших разработчиков не использовать эти специальные «недопустимые» символы (символы вне диапазона ASCII 32–126) и B), чтобы вручную войти и повторно зафиксировать код с «valid» комментарий. Это может показаться не таким уж большим делом, но запрет этих символов не позволяет легко копировать / вставлять ошибки и другие комментарии в комментарий коммита. Это замедляет работу людей, и все, что препятствует потоку и производительности, а также создает разочарование, необходимо уменьшить или устранить.
Судя по моим исследованиям, нет способа напрямую перейти из Vault в SVN. Возможно, можно использовать другую систему контроля версий в качестве промежуточного этапа миграции: Vault -> OtherSourceControlProduct -> SVN
... но я думаю, что мы должны либо выполнить сценарий коммитов (как предложил Джошуа в начале этого потока), либо - что более вероятно - просто зафиксировать последние несколько ревизий и оставить хранилище хранит репозиторий некоторое время для истории и т. д. Это фактически дает нам хорошую возможность очистить и реорганизовать наш текущий код и иерархию.
Пол