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

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

Мой вопрос: насколько возможно использовать версию Управляющее приложение (например, TortoiseSVN) для личные проекты, которые я делаю для себя (и даже школы проектов)?

Стоит ли суетиться, совершая изменения и вся эта рутина, только для "домашних проектов" вместо просто делать резервные копии вручную?

Ссылки

Ответ 1

Полностью.

Кредиты также относятся к http://blogs.embarcadero.com/nickhodges/2010/04/23/39416:

  • Иногда мы совершаем глупые ошибки. Необходима защитная сеть для контроля версий.
  • Отметьте важные этапы. Даже в домашней разработке вы можете пометить набор файлов и ревизий как конкретную версию программного обеспечения.
  • Вы тренируетесь для своей профессиональной жизни. Полагая в своей основе методологию работы, связанную с использованием контроля источника, вы профессионально подготовляете.
  • Эффективность хранения. Системы управления текущими источниками хранят изменения как разницу дельта до предыдущей версии. Это означает, что он более эффективен на диске, поскольку весь файл не сохраняется, а только различия.
  • У вас есть история для всего исходного дерева. Вы можете быстро увидеть, что было изменено и когда было изменено. Сравните файлы с различными версиями и легко слейте.
  • Вы можете провести эксперимент. Если у вас есть эксперименты, вы можете создать ветку (новую независимую линию разработки) и протестировать ее. В конце, если вы удовлетворены результатами, объедините его в HEAD (основная линия разработки). Вы получаете все это бесплатно, не создавая копию и не получая те же преимущества от использования элемента управления источником даже во время экспериментов.

Ответ 2

Это полностью стоит.

Обратите внимание, что вам также не нужно настраивать полноценный сервер SVN. Вы можете просто создать репозиторий в локальной файловой системе и подключиться к синтаксису файла://URL. Это означает, что вам не нужно беспокоиться о настройке демона SVN (что, вероятно, слишком велико для одного пользовательского проекта)

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

Ответ 3

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

Ответ 4

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

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

Ответ 5

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

С Subversion (по крайней мере) вам даже не нужно иметь "сервер" - простой каталог может служить вашим репозиторием, если вы обращаетесь к нему с типом типа "file://". Там даже бесплатная книга, которая содержит почти все, что вам нужно знать, чтобы начать:

http://svnbook.red-bean.com/nightly/en/index.html

Ответ 6

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

Ответ 7

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