Подтвердить что ты не робот

Как управлять личными проектами

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

Я заметил, что даже простой проект может стать сложным, если вы не можете легко спасти удаленный код и перейти от версии к другой. Резервное копирование Time Machine недостаточно.

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

4b9b3361

Ответ 1

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

Subversion широко распространена, и это неплохая ставка, поскольку она успешно заменила предыдущий и более старый инструмент CVS. Он опирается на центральный репозиторий, где код хранится и может быть скопирован: где я использовал SVN для личных проектов и небольших командных проектов, которые я создал на компакт-диске. Если ваш проект является открытым исходным кодом, есть такие сайты, как sourceforge, которые поддерживают svn, которые вы можете использовать для хостинга.

Однако, как указывали некоторые другие плакаты, личный проект может принести больше пользы из распределенной системы: git растет популярность, так как git -hub пришел в сеть и портирует усилия, чтобы добиться успеха. http://git-scm.com/ Вероятно, такие инструменты будут расти в ближайшие годы, поскольку они позволят большему числу людей участвовать в одном и том же код. Идея одного центрального репозитория расслабляется, давая каждому разработчику возможность отслеживать различные версии и возвращать сообществу версии, которые они завершают.

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

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

Ответ 2

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

Основываясь на этом, вы можете изучить любую из систем управления версиями (я считаю, что Subversion является самым популярным сейчас) и выберите тот, который наиболее точно соответствует вашим потребностям, или имеет интерфейсы, которыми вы являетесь наиболее комфортно с.

Ответ 3

Системы управления распределенной версией предназначены только для вас: посмотрите Bazaar, Git или Mercurial. Они легкие, локальные коммиты просты, и вы всегда можете вернуть в предыдущую версию. С помощью хостинг-провайдера, такого как GitHub, вы можете публиковать свои проекты, вы получаете резервное копирование бесплатно, и вы можете легко поделиться с другими потенциальными вкладчики. Сотрудничество легко, потому что слияние ваши изменения также облегчают работу.

Ответ 4

Я бы порекомендовал Subversion. Это свободно и относительно просто, и немного узнать об этом может быть полезно в будущем. Это перекрестная платформа, а также доступна в различных размещенных системах.

Смотрите также: fooobar.com/questions/113157/...

и: Использование контроля версий для домашнего развития?

Ответ 5

Subversion!

Вы можете установить локально или использовать размещенную службу. Службы хороши, если вы хотите переключиться между компьютерами или использовать их как автономную резервную копию. http://www.beanstalkapp.com/ имеет бесплатный план для личного использования.

GitHub (git, а не subversion) также популярен, но я считаю, что небольшая плата за личные проекты.

Ответ 6

Используйте git. Он позволяет работать без необходимости в сервере.

Существуют служебные программы для командной строки и GUI (более старые скриншоты) (для linux, окна и OS X).

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

Ответ 7

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

Вот несколько хороших моментов:

  • Многие системы управления версиями имеют хорошую интеграцию с IDE.
  • Ветвление позволит вам экспериментировать, не опасаясь, что потребуется много времени, чтобы вернуть изменения. Затем ветка может быть объединена с основной магистралью, если это необходимо.
  • История изменений может быть полезна, а пометка позволит установить этапы.
  • Более эффективное хранилище, чем полное резервное копирование, с использованием обычного копирования файлов.
  • Можно добавить дополнительные метаданные (например, комментарии коммита).
  • Многие системы контроля версий бесплатны!

Я лично использую сервер Subversion, который работает в моей системе, к которому я обращаюсь через Subclipse plug-in в Eclipse, который я считаю очень полезным для отслеживания моих личных проектов.

Если вы заинтересованы в Subversion, Контроль версий с Subversion - очень полезный источник в изучении понятий и способах установки и начните с Subversion.

Системы управления версиями могут сначала быть немного сложными, но это определенно стоит усилий для настройки!

Ответ 8

Используйте SVN или Mercurial.

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

Оба работают в режиме командной строки или используют проводные интерфейсы (Tortoise) или плагины, доступные для самой обычной IDE.

Ответ 9

Я использую subversion для управления всеми моими проектами. xp-dev.com - это бесплатное решение для размещения subversion. Кроме того, я думаю, если вы устанавливаете tortisesvn, он устанавливает сервер subversion для локального использования.

Ответ 10

Полная система контроля версий - это dropbox (www.getdrobox.com). Это не (только) предназначено для исходного кода. Он доступен (с интеграцией с интеллектуальной ОС) для Mac, Win и Linux плюс частный веб-интерфейс.

Это может быть интересно для вас.

Ответ 11

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

ВСЕГДА используйте управление версиями. В эти дни это бесплатно и легко сделать. Там просто нет причин никогда не использовать его. Если это час проекта... хорошо... это час проект, который теперь в управлении версиями.

Мое решение было slicehost (нормально... не бесплатно), redmine (бесплатный трекер ошибок RoR) git и gitosis. Запуск нового проекта добавляет около пяти минут в начало любой кодировки, но его пять минут стоит того.

Ответ 12

Один элемент, который вам понравится в git, например, с использованием github-хостинга, - это то, что у вас есть история изменений, в которые вы можете пойти, и получить фактический источник кода и, таким образом, "спасти" предыдущие изменения кода.

Вы также можете использовать подход Dropbox, просто создавая исходный код в папку в облаке.

Я использовал оба метода для личных проектов.

Ответ 13

Хостинг версии, такой как beanstalkapp.com, очень удобен, но подумайте, хотите ли вы передать свой источник третьей стороне. Вы можете рассмотреть локальный репозиторий, резервное копирование в Интернете с помощью решения, которое зашифровывает содержимое локально перед загрузкой. Я делаю это с subversion, Amazon S3 и JungleDisk.

Ответ 14

Bitbucket является абсолютным обязательным учетом личных проектов на основе:

  • Бесплатные, неограниченные, частные репозитории
  • До 5 пользователей на своей бесплатной учетной записи
  • Git и поддержка Mercurial.

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

Он также позволяет проектам, которые войдут в общедоступный домен, просто разветкиться на GitHub и т.д.

Ответ 15

Контроль версий всегда важен. Попробуйте бесплатный онлайн-SVN, например http://beanstalkapp.com/ Сделайте поиск, и вы можете найти множество предложений

Ответ 16

Я настоятельно рекомендую загрузить VisualSVN Server. Это очень простая настройка и будет делать именно то, что вам нужно.

Ответ 17

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