Автоматическое резервное копирование проектов .Net

В моей компании мы разрабатываем несколько приложений для Windows с использованием технологии .Net. Каждый день мы вручную копируем наши проекты на внешний жесткий диск. Поэтому я ищу инструмент, который выполняет эту работу.

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

Есть ли какое-либо программное обеспечение/метод для удовлетворения моих требований??

  • Бесплатно или платно
  • Должен работать в ОС Windows

Ответы (2)

Кобиан Бэкап

Cobian Backup — это программа резервного копирования, которую можно запустить двумя способами: как обычное приложение или как службу Windows. Программа может планировать автоматическое резервное копирование файлов и каталогов локально или на FTP-серверы и может использовать сжатие и шифрование.

Пользуюсь с 1 года, действительно полезно

введите описание изображения здесь

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

Скачать @ Cobian Backup

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

Это даст вам:

  1. Резервная копия исходного кода.
  2. История изменений исходного кода.
  3. Информация о том, кто внес какие изменения.
  4. Информация о том, почему было внесено изменение.
  5. Возможность вернуть исходный код к тому состоянию, в котором он был в конкретный момент времени, например, в конкретной клиентской версии.
  6. Возможность быстро узнать, когда и как была введена конкретная ошибка.
  7. Возможность пометить доставленный код как сгенерированный из определенной версии исходного кода.

Существует большое количество платных и бесплатных инструментов контроля версий, но они делятся на 3 большие категории:

  1. Блокировка централизованных систем — для них требуется центральный сервер, и каждый разработчик должен проверять файлы, которые он хочет изменить, прежде чем вносить изменения, чтобы другие не могли изменить этот файл. Если вы не работаете в строго контролируемой среде, я бы не рекомендовал использовать эту модель, так как управление такими системами сопряжено с большими накладными расходами.
  2. Объединение централизованных систем — позволяет всем разработчикам вносить изменения в исходный код, а затем предоставляет инструменты, помогающие объединять изменения. Требуется один компьютер в вашей сети для запуска серверного программного обеспечения
  3. Распределенные системы контроля версий - полная история доступна в каждой системе разработчиков, и они могут вносить изменения, а затем объединять их. Обычно одна копия является «мастером», из которого все разработчики извлекают и вносят изменения, но если «мастер» утерян, то для его воссоздания можно использовать любую обновленную копию разработчиков. Изменения могут быть переданы непосредственно мастеру, работающему на сервере, или могут быть распространены между разработчиками в виде исправлений по электронной почте и т. д.

Программное обеспечение для блокировки централизованных VCS.

Это программное обеспечение часто бывает дорогим и требует сервера, часто с большими накладными расходами на управление, из-за вмешательства, необходимого, когда разработчик оставляет файлы заблокированными слишком долго, а также не позволяет разработчикам работать в автономном режиме или независимо, поэтому я бы не рекомендовал использовать его в этом случае. Примеры включают ClearCase , PVCS ( платные) и CVS (бесплатно).

Программное обеспечение для объединения централизованных VCS.

Хотя для них по-прежнему требуется центральный сервер, накладные расходы на управление и тенденция к обходу системы из-за проблем с блокировкой файлов меньше. Очень распространенной бесплатной системой является Subversion (SVN) .

Распределенная VCS.

Они обеспечивают наибольшую избыточность и могут обеспечить большую гибкость, включая возможность разработчика фиксировать изменения в автономном режиме, а затем «проталкивать» изменения позже. Лично я бы порекомендовал Mercurial (hg) или Git — оба они бесплатны и популярны, но Mercurial проще в использовании и включает в себя возможность для любой машины действовать как сервер с веб-интерфейсом. Оба доступны для многих платформ и имеют клиенты, интегрированные во многие IDE.

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

Добавлено обновление

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

+1, это будет лучшее решение, которое можно распространять.