Контроль версий для управления клубным проектом?
В моей школе мы начинаем соревнование по программированию для нашего CS-клуба, чтобы помочь нашим новичкам изучить методы быстрого поворота, даты выполнения, сравнения кода и документации API с использованием Robocode. Мне было интересно, есть ли способ позволить каждому члену работать над своими собственными пакетами / роботами и доставлять их в центральное место для сравнения и соревнования? Я хотел бы иметь возможность перенести все проекты на свой ноутбук, но позволить членам клуба хранить свои пакеты отдельно и работать только над своими частями. Кроссплатформенное решение идеально.
2 ответа
Вы можете бесплатно опубликовать свой код на Github или Google Code и использовать его, если не возражаете против того, чтобы каждый мог его посмотреть. Вы можете иметь свои собственные отдельные репозитории и просто просматривать их там.
В противном случае я бы пошел с Subversion на центральном сервере. Существует множество бесплатных опций, таких как Unfuddle и Springloops, которые предлагают бесплатные планы. Вы можете создать папку для каждого из вас или создать отдельные репозитории. Недостатком этих бесплатных пакетов является количество пользователей.
Конечно, самый настраиваемый способ - использовать собственный сервер. Единственная проблема - сложность настройки всего этого. Subversion и Git довольно просты в настройке.
В Git есть действительно хорошая функция подмодуль.
Это позволяет группировать любое количество уникальных репозиториев git в другой репозиторий. Таким образом, все программисты создают свои собственные репозитории, а затем вы можете создать супер-проект, чтобы связать их всех вместе.
Хорошее описание того, как это сделать, можно найти в онлайн-книге Pro Git.