З SVN у мене було одне велике сховище, яке я зберігав на сервері, і перевірявся на кількох машинах. Це була досить гарна система резервного копіювання, і дозволила мені легко працювати на будь-якій з машин. Я міг перевірити конкретний проект, здійснити фіксацію, і він оновив "головний" проект, або я міг оформити весь предмет.
Зараз у мене є купа сховищ git, для різних проектів, кілька з яких знаходяться на github. У мене також є згадане мною сховище SVN, імпортоване за допомогою команди git-svn.
В основному мені подобається, що весь мій код (не лише проекти, а випадкові фрагменти та сценарії, деякі речі, такі як моє резюме, статті, написані нами, створені веб-сайти тощо) в одному великому сховищі, я можу легко клонуватися на віддалений машини або пам'яті-накопичувачі / жорсткі диски як резервне копіювання.
Проблема полягає в тому, що це приватне сховище, а git не дозволяє перевіряти певну папку (що я можу натиснути на github як окремий проект, але зміни з’являться як у master-repo, так і в підменю- репост)
Я міг би використовувати підмодульну систему git, але вона не діє так, як мені хочеться (підмодулі є вказівниками на інші сховища і насправді не містять фактичного коду, тому для бекапінгу це марно)
В даний час у мене є папка git-repos (наприклад, ~ / code_projects / proj1 / .git / ~ / code_projects / proj2 / .git /), і після зміни змін у proj1 я роблю git push github
, потім я копіюю файли в ~ / Документи / код / python / Проекти / proj1 / і виконують єдину комісію (замість численних в окремих репозиціях). Потім зробіть git push backupdrive1
, і git push mymemorystick
т.д.
Отже, питання: як ваш особистий код та проекти з git-сховищами та підтримувати їх синхронізованими та резервними копіями?