Зачем, Почему, Как, Понимание процесса
Переход с VSS на Git
Вот я наблюдаю за вакансиями в сфере IT, поскольку сам программист.
Многие конторы в требованиях пишут об использовании Git. Это распределенная система контроля версий.
Это тенденция, а не дай бог завтра менять работу, да и интересно — о Git написано на каждом IT сайте или блоге.
У всех есть свои репозитории на GitHub или BitBucket. А у меня нету. На работе я пользуюсь VSS. Дома я вообще ничем не пользуюсь для хранения истории. Чувствую себя отделенным от прогрессивного общества.
Сейчас попытаюсь поразмышлять вслух и записать свои мысли — может что осознаю.
Зачем?
Переход с VSS на Git
Минуту пребывал в задумчивости.
Что не нравится в VSS? & mdash; да все мне в нем нравится! Он невероятно удобный, он визуальный. Он не отнимает у меня целую кучу времени — в нем я трачу невероятно мало своего рабочего времени. Вот за это хвала Микрософту. Например конфликт двух версий решается в пять секунд — VSS сам открывает замечательную утилиту WinMerge с уже открытыми файлами где только надо проверить какие строчки отличаются и убрать/добавить нужное.
У каждого файла есть история. Одно меня убивает как я не старался сделать расшареную сетевую базу для VSS — работает он с ней ужасно медленно.
Здесь я имею в виду базу не в локальной сети а базу в internet. Как я делал. На хостинге или VPS создавал базу. Делал доступ к папке через FTP или SSH чтобы эта папка была как виртуальный диск в Windows. Но увы с такой скоростью с какой происходят чекин и чекаут на такой сетевой базе, работать просто невозможно.
По локальной сети нареканий к VSS нет.
Мне нужна сетевая база позволяющая работать через интернет т.е. иметь доступ к исходникам везде. А GitHub или BitBucket это умеют. Вот VSS тоже вроде может
но уж очень медленно.
Git вроде распределенная система и должна позволить именно это недостающее мне звено,
приемлемую скорость добавления файлов в проект и получения из проекта, однако как дела обстоят на практике я пока не знаю. А как узнаю допишу и исправлю эту статью.
Понимание процесса
Переход с VSS на Git
Этот параграф я больше пишу для себя, чтобы в мозгах уложилась разница между VSS и Git
VSS
Создание нового проекта и добавление файлов
VSS
- Create Project;
- Set Working Folder;
- Add Files;
Git
#cd /Project/Dir/
#git init
#git add .
#git commit -m "comments"
Разница на этом этапе такая, когда добавляем файлы в VSS каждый файл имеет свою историю, каждый файл потом можно взять по отдельности.
В гите COMMIT — это своего рода версия проекта, т.е. временной срез всех файлов включенных в проект. когда мы делаем комит, мы присваиваем эту версию не каждому файлу, а проекту в целом. (Возможно все не совсем так, но я понял это именно так).