Подтвердить что ты не робот

Использование Git с Visual Source Safe 6.0

Извините за этот ужасный, ужасный вопрос... но мне не нужно использовать VSS.

Я хотел бы иметь возможность использовать Git локально для разработки ветвей и т.д. при использовании Visual Source Safe 6. Мое знание всех входов и выходов Git ограничено на данный момент, m недавнее преобразование.

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

В идеале, в начале рабочего дня я получил бы последнюю версию VSS.. сделайте это с помощью Git.. затем поработайте над альтернативной ветвью, вернув изменения в master, когда мне нужно было выполнить VSS.

Будучи тем, что я относительный новичок Git, что может быть лучшим способом выполнить это... наряду с лучшими командами для выпуска/способа настройки.

* note: Source Safe требует, чтобы файл был проверен, прежде чем можно будет внести изменения в него. Может быть, есть какой-нибудь инструмент / script, который я могу использовать, чтобы помочь автоматизировать это для того, чтобы вносить изменения в VSS?

4b9b3361

Ответ 1

Настройка, которую вы планируете, должна работать нормально. Для команд git просто проверьте учебники.

Рабочий процесс, который я использовал (не с VSS, но концепция такая же) выглядит примерно так:

  • Оформление заказа с основного (т.е. VSS)
  • Храните одну ветвь "соединительной линии", которая синхронизируется с VSS
    • всегда будет оставаться чистым.
  • Разработка в ветвях, разветвленных от "туловища".
  • Обновление с VSS:
    • переключиться на "trunk"
    • обновление с помощью VSS
    • git зафиксировать изменения
    • пересобирайте ветки, которые разветвлены с туловища.
  • Чтобы внести изменения в VSS:
    • нажмите изменения из ветки разработки в "trunk" .
    • переключиться на "trunk"
    • VSS фиксирует изменения

Ответ 2

Любой, застрявший в VSS, может найти следующее сообщение полезным, если вам нужно иметь дело с ветвями:

http://timwise.blogspot.com/2011/11/multiple-working-folders-for-git-on.html

В основном, с помощью SysInternals 'Junction, чтобы получить поддержку symlink в Windows, а затем передайте репозиторий git между физическими папками папок, которые VSS заставляет вас копировать файлы в папку .git и символически связывать папки.

И вот сценарии для автоматизации обмена

Ответ 3

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

  • Chekout из VSS
  • Создайте ветку для работы с вашей функцией.
  • завершить работу над вашей функцией.
  • Переключиться на главный ветвь
  • Обновить последние версии VSS
    • Если какие-либо изменения сделаны, пересоедините ветку
  • Посмотрите, какие файлы были изменены с помощью $ git diff --name-status master..branchName (см. Показывать, какие файлы были изменены между двумя версиями для источника)
  • Проверьте измененные файлы с помощью VSS
  • Объедините свою ветку с хозяином (желательно удалив ветвь вашей функции)
  • Обязать VSS

Некоторые из них могут быть script из вашего пути, но поскольку вы, скорее всего, используете M $(поскольку используете VSS), это не то, что я могу вам помочь.

Как работает VSS, я бы подумал, что было бы лучше свести к минимуму время, потраченное на файлы, извлеченные из VSS, и поэтому это лучший способ.

Обратите внимание, что могут возникнуть проблемы с обновлением файлов, поскольку VSS автоматически устанавливает флаг readonly в файлы, которые не были извлечены. Обходной путь может понадобиться здесь.