Как Вы организовали бы репозиторий Подверсии для в проектах программного обеспечения дома?

Collection<Integer> l = new ArrayList<Integer>();//Do the collection thing...

l.removeIf(i -> i == 5);      //iterates through the collection and removes every occurence of 5

Лямбда-выражения и методы сбора в Jdk 8 входят в Handy и добавляют некоторый синтаксический сахар

19
задан user2864740 24 February 2015 в 16:57
поделиться

9 ответов

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

6
ответ дан 30 November 2019 в 03:29
поделиться

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

Для нас, как консультанты, мы делаем разработку заказного программного обеспечения и программного обеспечения для внутреннего пользования, а также некоторое управление документооборотом через SVN. Это было в нашем интересе создать один репозиторий для каждого клиента и один для нас. В каждом репозитории мы создали папки для каждого проекта (программное обеспечение или иначе). Это позволило нам доступу безопасности сегмента репозиторием и клиентом и даже проектом в репозитории. При движении глубже, для каждого проекта программного обеспечения мы создали 'работу', 'теги' и папки 'ответвлений'. Мы обычно помещаем выпуски в 'теги' с помощью 'release_w.x.y.z' как тег для стандарта.

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

\Repository
   \ProjectX
      \Working
         \Code       
         \Scripts
         \Notes       
      \Tags
      \Branches

Что касается некода, я предложил бы прямое расположение папки или типом документа проекта (руководства, политики, и т.д.). Обычно с документами и в зависимости от то, как Ваша компания работает, просто имея историю/журналы версии, достаточно.

Мы выполняем SVN в Windows наряду с WebSVN, который является большим средством просмотра репозитория с открытым исходным кодом. Мы используем его для предоставления клиентского веб-доступа к их коду, и это все управляется базовой безопасностью Подверсии. Внутренне, мы используем TortoiseSVN для управления репозиториями, фиксацией, обновлением, импортом, и т.д.

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

Удачи!

19
ответ дан 30 November 2019 в 03:29
поделиться

Вы могли использовать сервис как www.unfuddle.com для установки свободного SVN или репозитория МЕРЗАВЦА.

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

Или, Вы могли, конечно, настроить локальную копию. Существует много учебных руководств, которые будут найдены через Google для этого: http://www.google.com/search?rlz=1C1GGLS_enUS291&aq=f&sourceid=chrome&ie=UTF-8&q=set+up+svn

3
ответ дан 30 November 2019 в 03:29
поделиться

Один репозиторий для Ваших проектов, вероятно, достаточен. Мне нравится типичный подход, который индексирует расположение проектом (см. этот раздел от книга Подверсии O'Reilly):

/first-project/trunk
/first-project/branches
/first-project/tags
/another-project/trunk
/another-project/branches
/another-project/tags
/common-stuff/trunk
/common-stuff/branches
/common-stuff/tags

Имеют в виду, что можно всегда реорганизовать репозиторий позже.

кроме того, для внутреннего материала, я предпочитаю FSFS для хранилища данных, в противоположность Беркли DB. FSFS более эластичен, и скорость контроля не является большим беспокойством о малочисленных командах/проектах. Вы можете выдерживать сравнение и решать для себя.

Другие стандартные компоненты рецепта включают Trac и минимальный сервер Linux для хостинга репозитория на LAN.

3
ответ дан 30 November 2019 в 03:29
поделиться

После регистрации этого вопроса я говорил с коллегой, который предположил, что я прочитал статью:

http://www.codinghorror.com/blog/archives/000968.html

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

3
ответ дан 30 November 2019 в 03:29
поделиться

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

2
ответ дан 30 November 2019 в 03:29
поделиться

Для моей компании я использую svn+ssh и основанную на ключе аутентификацию. Можно сделать это с обоими клиентами окон и клиентами Linux. Это очень легко использовать, после того как Вы получаете свои ключи прямо, поскольку Вы используете ssh ключ к входу в систему вместо того, чтобы ввести пароль.

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

Эта статья описывает много способов далее защитить Ваши логины ssh для учетных записей svn.

я рекомендую создать учетные записи специально для svn доступа без другого доступа к тому серверу. Мое предположение - то, что Вы использовали бы ежедневную сборку или автоматизированный сценарий для обновления сохраненного procs в дб. Ежедневные сборки могут иметь свои собственные специальные учетные записи и свои собственные ssh ключи. Мне не нравится за мои автоматизированные инструменты работать с тем же входом в систему как пользователь - человек (таким образом, я знаю, какой инструмент повреждается).

, Если Вы не понимаете, все приемы безопасности, ища Google могут получить Вас некоторая справка. Если Вы испытываете затруднения, настраиваете один без приемов безопасности сначала. Это делает немного более простым диагностировать.

Удача, и любят обладать преимуществами управления исходным кодом!

2
ответ дан 30 November 2019 в 03:29
поделиться

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

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

0
ответ дан 30 November 2019 в 03:29
поделиться

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

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

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

0
ответ дан 30 November 2019 в 03:29
поделиться
Другие вопросы по тегам:

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