Використання контролю версій для домашнього розвитку?


138

До сих пір я вдома розробляв свої особисті та шкільні проекти, не використовуючи жодної форми програмного забезпечення для контролю за редакцією, щоб впоратися зі своїми змінами та чим іншим.

Моє запитання полягає в тому, наскільки можливо використовувати додаток Control Version (наприклад, TortoiseSVN ) для особистих проектів, які я роблю для себе (і навіть шкільних проектів)?

Чи варто зайвих клопотів із реєстрацією, внесенням змін та всього цього, лише для «домашніх проектів» замість того, щоб робити резервні копії вручну?

Посилання :


2
Набагато простіше використовувати керування джерелами, ніж робити резервні копії вручну! Можливо, простіше навчитися робити резервні копії вручну, ніж навчитися використовувати керування джерелами.
yfeldblum

1
Я можу порекомендувати VisualSVN, дуже простий у використанні. І їх підривної сервер вільний :) ( visualsvn.com )
Svish

Замість цього використовуйте розміщений сервер, ви отримуєте нульове обслуговування + резервне копіювання. Я використовую Unfuddle: stackoverflow.com/questions/430742 / ...
ripper234

Відповіді:


191

Повністю.

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

  • Іноді ми робимо дурні помилки. Забезпечити мережу безпеки джерела - обов'язково.
  • Позначте важливі віхи. Навіть у домашній розробці ви можете позначити набір файлів і версій як певну версію програмного забезпечення.
  • Ви тренуєтесь для свого професійного життя. Введення в голову методології роботи, пов'язаної з використанням джерела управління, готує вас професійно.
  • Ефективність зберігання. Поточні системи управління джерелами зберігають зміни, як різницю дельти від попередньої версії. Це означає, що він більш ефективний на диску, оскільки не зберігається весь файл, а лише відмінності.
  • У вас є історія для всього вашого вихідного дерева. Ви можете швидко побачити, що було змінено і коли було змінено. Порівняйте файли різних версій і легко з’єднуються.
  • Ви можете розгалужуватися, щоб експериментувати. Якщо у вас є деякі експерименти, ви можете створити гілку (нову незалежну лінію розробки) і протестувати її. Зрештою, якщо ви задоволені результатами, об'єднайте їх у HEAD (головна лінія розвитку). Ви отримуєте все це безкоштовно, не створюючи копії та отримуючи ті ж переваги від використання джерела управління навіть під час експериментів.

13
Ще одне, що потрібно додати: якщо система управління версіями знаходиться на віддаленій машині, вона забезпечує просте резервне копіювання вашої роботи в Інтернеті.
NotMe

Я згоден повністю. Кожного разу, коли вам доведеться скористатися однією з цих функцій, ви вже повернули в першу чергу незначні витрати на використання джерела управління.
Кріс Фармер

Пункт 4 кулі не застосовується до git. git оптимізовано для продуктивності злиття, а зберігання розрізків не є вигідним для цієї мети. в основному передбачається, що у вас є достатньо місця на диску для вихідного коду. Однак усі інші моменти є причинами використовувати будь-який контроль джерела, і git, звичайно, задовольняє всі вони.
SingleNegationElimination

Ще раз рекомендую git, особливо для пунктів 2. 5. і 6. git має дуже приємний інтерфейс для тегів, розгалужень, злиття тощо. А деякі графічні інструменти, такі як qgit або gitk, дозволяють легко зрозуміти, як усі ваші гілки поєднуються разом .. це також шматок пирога, щоб перетворити ваш поточний (неперевершений) робочий каталог в каталог git з 3 командами: git init, git add., git commit
Девід Клардж

Якщо ваш особистий проект досить великий, щоб зробити пункт 4 (ефективність зберігання) важливим, вам обов'язково потрібен контроль над джерелами!
Тихон Єлвіс

31

Це цілком варто.

Зауважте, що вам також не потрібно налаштовувати повноцінний SVN-сервер. Ви можете просто створити сховище у локальній файловій системі та підключитися до файлу: // Синтаксис URL. Це означає, що вам не доведеться переживати труднощів зі створення демона SVN (що, ймовірно, є надмірним для одного проекту користувача)

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


1
Нещодавно я спробував git, тому що проект, за яким я слідкував, використовував його. Я одразу перейшов на git для своїх особистих та робочих проектів, як тільки побачив, як це просто та швидко . Настійно рекомендується.
Дейв Шерохман

8

Використання контролю джерела також добре для резервного копіювання. Якщо ви завжди все перевіряєте, тоді ви можете створити резервну копію всіх проектів вихідного коду, створивши резервну копію всіх своїх сховищ. Якщо у вас кілька машин, вам не доведеться турбуватися про те, де насправді є остання версія вашого коду - це на сервері репозиторію.


6

Я тримав всю свою магістерську дисертацію під контролем джерела - як коду, так і самої тези - тож я щиро прихильник цього робити, а не лише коду.

Для окремих проектів головна перевага - це свобода змінювати речі та експериментувати, знаючи, що завжди можна повернутися до попередньої версії, якщо вона не працює. І це дає вам неявні резервні копії вашої роботи (просто переконайтеся, що ваш svn repo знаходиться як мінімум на іншому жорсткому диску, ніж ваша основна робота)


5

Абсолютно, це варто зробити. Це дає вам можливість спробувати дикі та шалені рефактори, а потім з легкістю повернутися з них, якщо вони не працюють. Він також встановлює добрі звички, якщо / коли ви працюєте більш спільно з групою.

З Subversion (принаймні) вам навіть не потрібно мати "сервер" - простий каталог може слугувати вашим сховищем, якщо ви отримуєте доступ до нього з URL-адресами типу "file: //". Навіть є безкоштовна книга, яка містить майже все, що потрібно знати, щоб почати:

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


4

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


4

Контроль редагування чудовий тим, що він дозволяє бути більш експериментальним, знаючи, що якщо ваші експерименти не вдасться, вам доведеться повернутися до чогось.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.