Переход с VSS на Git

Зачем, Почему, Как, Понимание процесса Переход с 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
Создание нового проекта и добавление файлов

VSS 
- Create Project;
- Set Working Folder;
- Add Files;
           

Git 
#cd /Project/Dir/
#git init
#git add .
#git commit -m "comments"

Разница на этом этапе такая, когда добавляем файлы в VSS каждый файл имеет свою историю, каждый файл потом можно взять по отдельности. В гите COMMIT — это своего рода версия проекта, т.е. временной срез всех файлов включенных в проект. когда мы делаем комит, мы присваиваем эту версию не каждому файлу, а проекту в целом. (Возможно все не совсем так, но я понял это именно так).