2016-10-14 4 views
-1

Я разработчик Microsoft более 20 лет, и я использовал SourceSafe навсегда, поэтому я понимаю источник управления как таковой. В попытке двигаться со временем я занимаюсь некоторой работой в ASP.Net Core, и у меня есть два компьютера Mac, над которыми я буду работать. У меня есть код Visual Studio и т. Д., Там все хорошо. Я создаю проект на Mac 1, настраиваю репо на visualstudio.com, и моя работа и фиксации - все хорошо. Иногда я должен посетить своего клиента, и я беру со мной MacBook Pro. Чтобы синхронизировать данные между двумя машинами, я всегда использовал Dropbox.Новое в Git - нужно понять, может ли Dropbox помешать ему?

Мне просто нужно понять, что происходит с репликацией файлов - если в проекте есть файлы на iMac дома, и они синхронизируются с MacBook по чудесам Dropbox, что там происходит? Является ли проект еще под управлением источника на MacBook (я вообще не настроил Git на нем). Предположительно, я не могу вернуться обратно в центральный репозиторий? Файлы просто синхронизируются с домашней машиной через Dropbox, и я передаю их, когда возвращаюсь домой после встречи? Должен ли я иметь отдельную ветку или вилку или что-то на ноутбуке и останавливать Dropbox, синхронизируя эту папку?

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

+0

Возможно, вас заинтересует https://github.com/anishathalye/git-remote-dropbox –

ответ

0

Я предпочитаю Mercurial для Git, но я думаю, что те же проблемы - с vis Dropbox - применимы к обоим, здесь.

Вкратце: я бы не использовал Dropbox для синхронизации.

Главное, что может пойти не так, если Dropbox (или аналогичный) решает синхронизировать каталог репозитория (.hg или .git) одновременно с Mercurial/Git. Это может создать очень плохой день в офисе, поскольку репозиторий поврежден. Для этого требуется довольно неудача, но это случилось со мной дважды в прошлом, когда у меня была такая же яркая идея, как и вы.

Кроме того, вы используете две (широко) «синхронизирующие» технологии друг над другом, здесь, и это спокойно требует неприятностей.

То, что я сейчас обычно делаю, - это использовать (публичный или закрытый) репозиторий на сайте bitbucket.org или создать репозиторий на машине, на которой я могу ssh, и клонировать этот репозиторий для каждой из машин, которые я буду работать на. Это означает, что я полностью разделяю код через Mercurial.

Downsides:

  • требует другого сервиса (Bitbucket) или SSH-доступного аппарат, который может быть неудобным по какой-то причине (но это на самом деле не больше хлопот, или информации утечки, чем при использовании Dropbox) ;
  • Вы можете делиться только полными коммитами (но это, вероятно, хорошая привычка стремиться, чтобы ваши коммиты были небольшими и достаточно атомными, чтобы это было не более чем незначительное раздражение);
  • Вы иногда забываете, где такое-то редактирование было! (но это отдельный процесс, который вы можете исправить).

расквитаться:

  • вы используете инструмент - Mercurial или Git - как это предполагалось, и в довольно надежный режим;
  • различные копии полностью отделены друг от друга, поэтому существует ограничение на то, сколько из вашей работы вы можете случайно разрушить сразу.

 Смежные вопросы

  • Нет связанных вопросов^_^