VS2005 и VSS. Должны ли файлы .exes, .dlls, pdbs, .resource и сгенерированные XML-файлы идти в VSS? - PullRequest
2 голосов
/ 08 апреля 2010

Кажется, что следующий тип файлов должен быть доступен для записи, чтобы иметь возможность скомпилировать решение. .EXE .dll .pdb (при отладке) .resource (?) .xml (по крайней мере, сгенерированные системой. Я не уверен, являются ли они просто всеми документами XML)

Если они были зарегистрированы и могут быть перезаписаны компилятором только тем, кто их проверил, то проверка их в исходном коде безопасна и требует проверки для их изменения, которая проверяется компилятором при каждом запуске мешать другим разработчикам отлаживать и запускать.

Какая лучшая практика? Кажется, VSS автоматически добавляет все.

Ответы [ 3 ]

3 голосов
/ 08 апреля 2010

Как правило, вы не хотите регистрировать какие-либо файлы, которые генерируются, если только вы не сгенерируете их один раз, а затем выполняете «копирование и запуск» с файлами оттуда (т.е. вы никогда не регенерируете их). Это особенно верно для систем контроля версий, таких как VSS, которые используют блокировку с одной проверкой.

Если вы хотите создавать версии сгенерированных файлов, я бы предложил не создавать версии для них в решениях / местах проекта, а иметь отдельный процесс, который копирует их в другое место и проверяет их там. Если вы создадите версию сгенерированных файлов в sln / proj, у вас будут кошмары, сражающиеся с людьми, чтобы проверить их и вернуться обратно.

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

1 голос
/ 08 апреля 2010

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

Однако вы вполне можете захотеть заархивировать все или некоторые из этих файлов (возможно, на определенных этапах, и, в частности, если вы выпустите их за пределами своей организации разработчиков) на случай, если вам придется иметь дело с сообщениями о проблемах / ошибках, обнаруженными тестирование или конечными пользователями.

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

0 голосов
/ 08 апреля 2010

Visual Studio хорошо отбирает нужные элементы для добавления в исходный код.Используйте команды из контекстного меню проекта или из меню файла при настройке нового проекта.

Распространенной ошибкой является добавление папки из VSS.

...