Вопрос

Я вынужден использовать Visual Source Safe 2005 на работе.Я бы хотел объединить это с DVCS, чтобы я мог проверять файлы локально, не мешая моим коллегам, если есть ошибка или она не компилируется.

В моих попытках с Mercurial это работает, но вызывает несколько странных проблем.А именно, он думает, что кто-то другой проверил файлы, которые я проверил.

Вот мои мысли о том, как мне следует с этим справиться:

  1. Отключите автоматическую проверку.
  2. Работайте локально в Mercurial
  3. Когда я буду готов внести свои изменения...
    1. Клонируйте мой репозиторий Mercurial.
    2. Обновите мой Безопасный репозиторий с визуальным исходным кодом
    3. Извлеките и объедините два репозитория с помощью Mercurial.
    4. Проверьте все в Visual Source Safe.

Звучит ли это разумно?Я всегда слышу плохие вещи о VSS, неужели это просто просьба ко мне увидеть эти проблемы воочию?

Это было полезно?

Решение

Вб Ласко

Я обнаружил ту же проблему.Я хотел изменять файлы и объединять их по мере необходимости, вместо того чтобы ждать, пока какой-нибудь другой разработчик разблокирует их.Решение, которое сработало для меня, было:

1) Получите последнюю версию проекта VSS (я разместил все проекты VSS в разделе vss):

c:\vss\projectA

2A) Инициализировать с помощью Mercurial

cd vss\projectA
C:\vss\projectA>hg init

2B) Клонируйте проект в то место, где его можно было бы изменить по желанию

hg clone vss\projectA myProjects\projectA

3) Извлеките последние изменения из копии VSS (пропустите, если вы пришли из 1 и 2).

C:\myProjects\projectA>hg pull
C:\myProjects\projectA>hg update
(solve conflicts if any)

4) Работайте по желанию с клонированной версией.Позже перенесите свою работу в копию vss:

C:\myProjects\projectA>hg push
(don't run hg update yet, wait for VSS latestes version)

5) Теперь выполните проверку всех файлов в проекте VSS

6) Запустите "обновление hg" в проекте VSS, чтобы объединить ваши изменения с последними изменениями VSS.

C:\vss\projectA>hg update
(if there are conflicts, resolve them)

7) Зафиксируйте изменения

C:\vss\projectA>hg commit

8) Выполните проверку VSS (снятие блокировок с других пользователей) Вернитесь к шагу 3.затем повторяйте шаги 3-8 вечно...;-)

Таким образом, вы можете работать с хорошей системой контроля версий, сохраняя при этом возможность "общаться" с устаревшими проектами.Вы также сможете наслаждаться:a) Нет проблем с заблокированными файлами b) вы можете поделиться своим репозиторием с другими пользователями, которые знают, как использовать Hg c) создавать ветки и т. Д

Просто будьте осторожны, сначала обновите / разрешите конфликты, протестируйте, а затем выполните проверку VSS

Твое здоровье, Луис

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top