Там некоторый путь состоит в том, чтобы фиксировать файл “частично” в TortoiseSVN?

46
задан Fabio Gomes 24 November 2008 в 13:30
поделиться

6 ответов

Нет. Подрывная деятельность работает на уровне файла.

12
ответ дан Corey Trager 8 November 2019 в 00:02
поделиться

Нет.

лучший способ сделать, который должен зарегистрироваться в некотором файле как "build_paths.h.default", затем на каждой платформе сборки, скопируйте его в build_paths.h, измените его для удовлетворения, затем скажите SVN ИГНОРИРОВАТЬ build_paths.h. И наконец #include "buiild_paths.h" в рамках Вашей программы.

7
ответ дан Will Hartung 8 November 2019 в 00:02
поделиться

Короткая версия: НЕТ. Подрывная деятельность является бескомпромиссной системой (как все системы управления исходным кодом, я знаю о)

Более длительная версия: Нет, однако при использовании чего-то как NANT, чтобы сделать Вас сборка, Вы могли бы использовать xmlpoke или подобный для перезаписи частей файла на сборке. Работы для нас:) Мы переписываем приблизительно 6 web.config файлов и различные другие файлы конфигурации приложения на сборке (хорошо при создании пакета развертывания)....

4
ответ дан Nic Wise 8 November 2019 в 00:02
поделиться

Решение Вашей проблемы не состоит в том, чтобы заставить подрывную деятельность делать это для Вас, но настраивать Ваше приложение так, чтобы среда, определенные детали (Такой как [SOME_PATH] значение) хранятся 'внешне' к коду, в котором регистрируются.

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

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

Это может также быть достойно рассмотрения, должны ли детали быть применены во время изготовления или время выполнения - если можно расположить последнего, это делает развертывание новых версий приложения намного легче.

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

4
ответ дан belugabob 8 November 2019 в 00:02
поделиться

То, что Вы ищете, является функцией различных распределенных систем управления версиями такой как darcs.

0
ответ дан Drew Gaynor 8 November 2019 в 00:02
поделиться

Вы могли также определить:

  • рычаг перед фиксацией, который будет заботиться об откате для Вас,
  • и постфиксация, сцепляется для восстановления файла.

Ай... на самом деле это не хорошая идея, согласно Руководство .

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

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

1
ответ дан 3 revs, 2 users 94% 8 November 2019 в 00:02
поделиться
Другие вопросы по тегам:

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