подверсия/круиз control/nant/nunit с проектами Visual Studio и решениями

Самый простой способ - использовать

File("aaa").readBytes()

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

ByteArray можно создать с помощью вызова ByteArray(100), где 100 - его размер

Для [ 115], вероятно, лучше использовать функцию readFully, которая считывает именно запрошенное количество байтов.

Классический подход позволяет читать файл по частям, например,

    val buff = ByteArray(1230)
    File("aaa").inputStream().buffered().use { input ->
      while(true) {
        val sz = input.read(buff)
        if (sz <= 0) break

        ///at that point we have a sz bytes in the buff to process
        consumeArray(buff, 0, sz)
      }
    }
7
задан Martin Smith 3 March 2009 в 14:00
поделиться

5 ответов

Я использовал подверсию в течение некоторых лет теперь, и я должен сказать, что лучшее введение, которое я нашел, включено в справочный файл для TortoiseSVN. TortoiseSVN является другим свободным клиентом для Windows с интеграцией Проводника. Я настоятельно рекомендую, чтобы чтение Черепахи помогло сначала, даже перед исходными документами подверсии. Где необходимый это отсылает Вас к официальным документам.

Черепаха также, оказывается, мой любимый клиент. На самом деле на большинстве машин это - единственный компонент подверсии, в котором я нуждаюсь. Это выполняет все функции, которые я обычно использую, включая создание репозитория. В то время как это не удар к обычным инструментам командной строки, и я действительно устанавливаю их также в большинстве случаев, я только считаю cli инструменты необходимыми для автоматизации из сценариев и (нечастых) функций технического обслуживания репозитория.

Я нахожусь в процессе перепроектирования нашей собственной среды сборки на работе, таким образом, я прохожу опции для большого количества сборки/средств разработки. Вот инструменты, которые я могу рекомендовать или идти с хорошими рекомендациями от других:

WinMerge: наиболее рекомендуемый свободный различный инструмент, установка после TortoiseSVN для лучшей интеграции. Я использую этот инструмент ежедневно для многих целей, некоторых за пределами разработки.

TeamCity: сервер CI, который, кажется, хорошо полируется. Я еще не попробовал этого, но это - ведущий соперник по CC.NET, учитывая мой опыт с CC.NET (год) и хорошие обзоры, которые это получает. Гудзон является другой хорошо рассмотренной опцией.

Сервер VisualSVN: рекомендуемый свободный http (s) сервер для SVN, что интеграция функций AD для полномочий и стиля Microsoft msc консоль. Я только что закончил реализовывать его на работе, и это очень просто. Необходимость, если Вы хотите удаленный (IP) регистрация/выезд, шифрование SSL, сценарии рычага репозитория и другие основанные на сервере функции.

VisualSVN: хорошо рассмотренный плагин Visual Studio для SVN. Не попробовали этого, но это рассматривается как покупка легкой задачи. [Редактирование: согласно тому, что я считал здесь на переполнении, AnkhSVN является бесплатной опцией, которая работает о том же.]

SVN-монитор: рекомендуемое бесплатное программное обеспечение монитора, которое предупреждает Вас к изменениям в репозитории. Настраивающийся относительно того, что это контролирует и меры, которые это принимает. Зависит от устанавливаемого TortoiseSVN.

BugTracker.NET: рекомендуемый свободный сервер отслеживания ошибки. Функции интеграция SVN для связи проблем, прослеживаемых с изменениями подверсии. Не уверенный, если TeamCity имеет подобную функцию, но мы уже используем это за пределами разработки для отслеживания проблем справочной службы, и это является большим для бесплатного пакета.

У меня нет опыта с поблочным тестированием, покрытием, инструментами документации для.NET, таким образом, я не могу прокомментировать там.

Я - Pythonista, хотя, таким образом, я включу одну вещь, Python может быть полезен для wrt SVN, который является, что можно пользоваться библиотекой PySVN для выполнения любого вида автоматизированной работы репозитория, это слишком сложно для сценариев с инструментами командной строки. Я использую его для создания тегов, после того как сборка готова быть отмеченной и развернутой.

Выберите некоторые из этих инструментов, и Вы будете перед игрой. При разработке процессов вокруг них и учебного персонала, ну, в общем, это - все еще задание для Вас.:)

5
ответ дан 7 December 2019 в 03:21
поделиться

Поскольку Вы происхождения VSS, взглянули на Крепость Хранилища и SourceGear SourceGear. Если они сделают то, что Вы хотите, то они будут более быстрыми для изучения из-за того, что они разработаны для людей с мышлением VSS.

Я думаю, что они могут даже быть свободными для малочисленных команд.

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

Если Вы действительно пойдете с Подверсией, то Вы найдете, что это очень стабильно и больше затем способно к удовлетворению потребности большей части команды. Взгляните на TortoiseSVN для легкого UI сверху Подверсии

1
ответ дан 7 December 2019 в 03:21
поделиться

Если Вы хотите разбудить сервер Подверсии и работающий как можно скорее, не имея необходимость знать много о repo, проверьте Визуальный SVN здесь. Это - приложение для GUI, которое позволяет Вам настроить repos, не будучи должен прочитать много документации. Существует также dimecast об этом здесь.

До интеграции с CC.NET ищите документацию CC.NET относительно блока управления подверсии здесь, у них есть вспыхнувший в их сайте довольно хорошо, и необходимо смочь найти теги XML для svn довольно легко.

Необходимо также проверить клиентские инструменты реализации, как Черепаха SVN и Анк SVN.

Для NANT проверьте эти dimecasts здесь. Большие учебные руководства о том, как использовать nant эффективно.

1
ответ дан 7 December 2019 в 03:21
поделиться

Я записал видео, иллюстрирующее все основы включая установку SubVersion, CruiseControl.NET. Я даже иллюстрирую поврежденную сборку. dev используемый инструмент был Delphi, но, возможно, легко был VS.NET.

2
ответ дан 7 December 2019 в 03:21
поделиться

Это, вероятно, не полезно вопросу под рукой, но...

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

0
ответ дан 7 December 2019 в 03:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: