Какую стратегию вы используете для синхронизации вашего кода при работе из дома - PullRequest
11 голосов
/ 12 января 2009

На моей работе В настоящее время у меня есть среда разработки внутри виртуальной машины . Когда мне нужно работать из дома, я копирую свою ВМ и все необходимые мне базы данных на внешний USB-накопитель размером с ноутбук. Примерно через 10 минут копирования я положил диск в карман и отправился домой, скопировал обратно виртуальную машину и базы данных на свой персональный компьютер, и я готов к работе. Я выполняю те же шаги, чтобы забрать работу с собой.

Так что если я посчитаю общее количество времени, которое я потратил на ожидание файлов, чтобы закончить копирование, чтобы я мог вернуться домой и вернуть его снова, это займет около 40 минут! Я делаю у меня есть VPN-подключение к моей работе из дома (при условии, что интернет работает на обоих сайтах) и приличная скорость интернета (8 Мбит / с), но я нахожу удаленный рабочий стол на моей рабочей машине достаточно запаздывающим, чтобы я мог работать на своем ВМ напрямую.

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

РЕДАКТИРОВАТЬ: Я бы предпочел вариант, когда мне не нужно фиксировать свои изменения в управлении версиями, прежде чем я уйду с работы - так как я люблю делать содержательные описательные комментарии в моих коммитах, фиксация займет больше времени, чем просто копирование моей ВМ на портативный диск! lol. Также я бы предпочел решение, в котором моя среда разработки тоже синхронизирована. Сказав, что я по-прежнему очень заинтересован в ваших собственных решениях, даже если они не решают мою проблему так, как хотелось бы. :)

Ответы [ 23 ]

16 голосов
/ 12 января 2009

Решение распределенной / децентрализованной системы контроля версий подойдет для ваших нужд, Git, Bazaar, Mercurial, darcs ... у вас есть много альтернатив.

9 голосов
/ 12 января 2009

Используйте программное обеспечение для контроля версий, такое как SVN, SourceOffSite и т. Д. Вам просто нужно проверить все свои изменения и получить последние изменения, когда вы хотите синхронизировать.

Или вы можете использовать Windows Live Sync -> https://sync.live.com/foldersharetolivesync.aspx

5 голосов
/ 12 января 2009

Никто не рекомендовал rsync? Используйте rsync-клиент для отправки различий между файлами. Вы можете применить эти различия, таким образом обновляя ваш файл. Для самой маленькой передачи файла это, вероятно, лучшая идея.

3 голосов
/ 12 января 2009

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

3 голосов
/ 12 января 2009

Я использую Dropbox.

2 голосов
/ 12 января 2009

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

2 голосов
/ 27 марта 2009

Вот решение, которое я использую.

  1. Настройка VPN между офисной сетью и ноутбуком.
  2. Установите сервер VisualSVN
  3. Загрузить все проекты в ГТК.

Когда в офисе я проверяю проект, работаю над ним, а затем проверяю его. Когда дома или во всем мире я подключаюсь к офису через VPN, проверь мой проект, сделай свое дело, затем проверь его. Через VPN-соединение я также могу отправлять RDP на свои устройства и / или серверы.

Надеюсь, это поможет. Удачи!

1 голос
/ 12 января 2009

Я либо подключаюсь удаленно к офисной SVN, либо к VPN-входу и удаленному рабочему столу, к моей машине разработчика или настольного компьютера и продолжаю работать. Я очень редко синхронизирую любые файлы, но когда я делаю это, как правило, с DropBox (хотя вы не можете сделать это с большими файлами).

1 голос
/ 12 января 2009

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

1 голос
/ 12 января 2009

Мы работаем с распределенной командой, поэтому крайне важно, чтобы у каждого был простой и безопасный доступ к хранилищу кода. Для этого мы используем SVN поверх ssl / https. Работает отлично, надежно и безопасно.

...