Каков формат дельт в репозитории subversion и насколько сильно я могу взорвать его, если я изменю их в ловушке перед фиксацией? - PullRequest
5 голосов
/ 28 сентября 2011

Помоги мне нанести урон!Я устал от полдюжины хитов Google, которые говорят мне никогда не делать этого.Давайте испортим вещи действительно хорошо!Я почти уверен, что могу получить доступ к фактическим файлам в БД / транзакциях, так как я могу испортить их интересными способами?Я посмотрел на SVN :: Delta, но я даже не могу понять, что он должен делать (позволить кому-то делать красивые графики изменений в хранилище? Отправлять закодированные сообщения в ЦРУ?).

Я действительно не хочу слышать больше причин, почему бы не сделать это.Я работаю в среде с 40 или 50 другими людьми, которые используют подрывную деятельность.И пока мы кодируем, нам нужны пароли в файлах web.config, в файлах DataSource.groovy, назовите его.И просто отказ от коммита, потому что мы оставили их, так же неприятен, как и ад.Мы должны сохранить файлы с паролями, удаленными вручную (и мы должны открыть эти файлы, они не обязательно открываются), а затем, как только мы закончим фиксацию, мы должны вернуть их обратно, чтобы продолжить работу?Это хорошая идея, я полагаю, если вы просто хотите пощечину людям каждый раз, когда они совершают, до тех пор, пока они не выработают рефлекс Павлова, чтобы никогда ничего не совершать.И почему?Потому что компьютеры не должны автоматизировать задачи?Поскольку программный клиент не будет знать, что ловушка предварительной фиксации на самом деле не сохранила версию еще на компьютере разработчика?

Я довольно независим от языка.Покажите мне пример того, как сделать то, что вы никогда не должны делать ... какой файл я редактирую из pre-commit?Как мне интерпретировать гоблиды после строки DELTA # # #?Есть ли библиотеки, которые помогут с этим?Давайте повеселимся!

PS Серьезно, никто не создал тег "плохих идей"?WTF.

1 Ответ

4 голосов
/ 28 сентября 2011

Ошибка вашего процесса сборки, а не Subversion.Если вы не должны фиксировать пароли, сделайте что-то вроде следующего:

1 - Web.config файлы не должны быть зафиксированы.Вместо этого зафиксируйте файлы, такие как Web.config.dev или Web.config.qa.
2. Попросите ваш скрипт сборки переименовать соответствующий файл .config в Web.config, а затем выполните замену токена, чтобы вставить правильные пароли.Эта информация может быть получена из другого файла, который также не зафиксирован и в котором указано, в какой среде вы находитесь (поэтому он знает, какой файл .config использовать) и какие пароли.

...