Лучшие практики для управления исходным кодом настроенного проекта с открытым исходным кодом - PullRequest
3 голосов
/ 05 июня 2009

Я использую Java-проект с открытым исходным кодом и должен был внести некоторые изменения в наш сайт. Я скачал исходный код через Subversion, изменил два файла и создал собственный файл JAR. Теперь мне нужно сохранить эти пользовательские изменения в нашей системе контроля версий Subversion. Каков наилучший способ сделать это?

Должен ли я проверить всю помеченную версию открытого исходного кода в нашей системе, а затем создать ветку с нашими изменениями в ней? Или я должен просто зарегистрировать наши пользовательские файлы и положиться на версию с тегами с открытым исходным кодом, чтобы всегда быть рядом? Или, может быть, что-то совсем другое?

Ответы [ 3 ]

5 голосов
/ 05 июня 2009

Внимательно посмотрите на Subversion ветки вендоров , которые предназначены для «поддержки [изменения] пользовательских изменений сторонних данных в вашей собственной системе контроля версий». Это звучит как то, что вы хотите. Вы должны создать ветку поставщика для проекта Java с открытым исходным кодом в своем основном репо (от их последней версии SVN до ваших изменений). Затем проверьте ваши модификации. В будущем вы можете объединить вышестоящие изменения.

0 голосов
/ 05 июня 2009

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

Но если бы это было не вариант, я бы последовал совету Мэтью Флэшена о филиалах поставщиков.

0 голосов
/ 05 июня 2009

Книга Subversion бесплатна и доступна онлайн , с разделом, посвященным выбору макета хранилища .

сообщество Subversion рекомендует что вы выбираете местоположение хранилища для каждого корня проекта - «самый верхний» каталог, содержащий данные, связанные к этому проекту, а затем создать три подкаталоги ниже этого корня: транк, то есть каталог под который основной проект развития происходит; филиалы, которая является каталогом в котором для создания различных имен филиалы основной линии развития; и теги, которые представляют собой коллекцию снимки дерева, которые созданы, и возможно уничтожен, но никогда не менялся.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...