Не TortoiseHg Автосинхронизация с сервером - PullRequest
1 голос
/ 06 июня 2011

Я создал хранилище на https://bitbucket.org/ и использую TortoiseHg, чтобы клонировать его в папку на моем локальном компьютере.Я могу добавлять файлы для фиксации файлов, но я обнаружил, что они никогда не обновляются на сервере в Bitbucket.По какой-то путанице я обнаружил, что есть эта опция синхронизации.Что я не понимаю, так это то, почему я должен нажимать на синхронизацию.Если я хотел зафиксировать, то он должен совершить.

Где он хранится Если он не синхронизирован немедленно с сервером удаления.

Примечание: Я пробую TortoiseHg и Mercurial, пока у меня достаточно опытаSubVersion.

Ответы [ 2 ]

6 голосов
/ 06 июня 2011

Когда вы фиксируете, вы фиксируете в своем локальном репозитории - то есть в каталоге .hg в корне вашего проекта. Чтобы синхронизироваться с удаленным репозиторием, вам нужно явно отправить изменения. Вот как работают DVCS - это не та же модель, что и SVN.

4 голосов
/ 07 июня 2011

Ключевой особенностью распределенной системы контроля версий является то, что вы можете локально фиксировать .Это означает, что новый коммит не покидает ваш компьютер, когда вы нажимаете «Коммит», он просто сохраняется локально.

Это имеет несколько прямых последствий:

  • вы можетеработать, когда вы не в сети, например, в поезде или в самолетеназываемый набор изменений) означает добавление нескольких байтов к n + 2 файлам.

  • вы можете изменить свое решение: поскольку вы никому не поделились новым набором изменений,Вы можете удалить его с локального компьютера без проблем

Это также имеет некоторые косвенные последствия:

  • , поскольку коммиты быстрые, люди склонныеще много коммитов.Коммиты, как правило, более детализированы, чем то, что вы видите в централизованной системе, и это облегчает просмотр изменений

  • , поскольку коммиты локальные, часто бывает, что люди выполняют параллельную работу,Это происходит, когда мы с вами делаем один или несколько коммитов, основанных на одной и той же исходной версии:

                    [a] --- [b] --- [c] <-- you
                   /
    ... [x] --- [y]
                   \
                    [r] --- [s]         <-- me
    

    История эффективно разветвляется, поскольку мы оба начали работать на основе набора изменений y.Чтобы это работало, мы должны объединить две вилки.Поскольку это происходит постоянно, вы обнаружите, что Mercurial обладает очень надежной поддержкой слияния.

Итак, отделив создание коммита с публикуя коммита, вы получаете некоторые существенные преимущества.

...