Если вы искали в Интернете, я уверен, что вы видели изображения. Они выглядят примерно так:
Проблема с этими иллюстрациями состоит в том, что, хотя они имеют смысл для тех, кто использует git на регулярной основе, они абсолютно положительно путают с тем, кто впервые изучает git.
Я думаю, что лучшее место, чтобы остаться Это объясняется тем, чем не является git.
Одно из самых распространенных заблуждений, которые я вижу у неопытных разработчиков, — это путаное прозвище git для GitHub. Git — это не GitHub.
GitHub — это социальная облачная платформа для предоставления кода, отправки ошибок, чтения программного обеспечения и обмена проектами. Опытные разработчики понимают, что он включает в себя git как функцию, но если вы не понимаете git, вы можете просто хранить проекты в репозиториях GitHub, не понимая, как использовать платформу с функцией git. Я видел, как новички используют GitHub в качестве облачной библиотеки проектов для загрузки и выгрузки, и никогда не используют функцию git.
Git — это то, что можно использовать без GitHub. Его можно использовать отдельно на рабочем столе или с другими инструментами облачного хранилища, такими как GitLab, Azure, JIRA и т. Д.
Это программное обеспечение, но это другой тип программного обеспечения. В отличие от Microsoft Word или Adobe Photoshop, git — это не то, что вы можете дважды щелкнуть по значку и открыть программу. Однако вы можете загрузить различные инструменты, которые позволят вам открыть что-то вроде этого — графический интерфейс пользователя (GUI) — который поможет вам визуализировать то, что вы делаете с программным обеспечением .
Это важно различать, потому что я слышал от некоторых людей, что с git сложно разобраться, но позже я узнал, что они просто использовали сложный графический интерфейс. Когда я говорю им, что они могут переключиться на другой графический интерфейс, чтобы по-разному его визуализировать, это поражает их воображение.
Представьте себе, что вы можете использовать Интернет в Firefox, Chrome, Safari и т. Д. тот же интернет, но вы используете другой графический интерфейс для взаимодействия с ним. Git похож. На самом деле, вы можете использовать git без графического интерфейса, используя только командную строку / терминал.
Я слышал, что git описан как способ сохранения кода. Скажите это любому новичку, и он даст вам боковой глаз, как…
«хм… мы не можем просто Ctrl-S сохранить наши файлы?»
Git — это инструмент версии. Это позволяет вам вернуться назад во времени, чтобы найти файл, который существовал в предыдущей версии, но он делает гораздо больше. В отличие от инструмента просмотра истории в таких программах, как Photoshop, Git не ограничивает вас одной временной шкалой. Вы можете создать столько временных шкал, сколько вам нужно — каждая со своей историей, через которую вы можете путешествовать в любое время. Более того, вы можете объединить разные истории из разных временных периодов в новый файл.
«Но я не понимаю. Зачем мне это нужно? Звучит так, как будто все усложняется без причины. Я не делаю столько ошибок, которые я бы хотел исправить, чтобы исправить их ».
Вы можете и должны использовать это в своих личных проектах, но основная аудитория, которая извлекает выгоду из мерзавцев большинство — это команды разработчиков.
Вот как это работает. Когда команды разработчиков работают над проектом, они хотят работать с одной и той же папкой и файлами — одновременно. Представьте себе этот сценарий без мерзавца. Каждый разработчик может скопировать и вставить папку на рабочий стол, а затем начать работать. Но как бы они снова соединили все папки вместе? Что бы произошло, если бы один разработчик написал код, который ломает другой кусок кода? Что если разработчики перезаписывают один и тот же код в одном и том же месте?
«Как насчет приложений для совместной работы в режиме реального времени, таких как Google Docs? Почему разработчики не могут использовать что-то подобное? »
Что происходит, когда вы хотите, чтобы команда разработчиков написала один и тот же раздел 5 разными способами одновременно? Что произойдет, если вы хотите, чтобы один разработчик протестировал или реорганизовал новаторскую функцию, но в то же время хотите, чтобы другие работали над исходным кодом?
Git решает эти проблемы для команд, поскольку каждый член команды может работать над своим свою отдельную хронологию (ветвь), а затем автоматически объединить ее с кодом своей команды.
«Хорошо, но если у каждого члена команды есть своя ветвь, напомните мне, почему ее использовать самостоятельно быть полезным? »
Git также полезен для итерации того, что уже существует.
Да, вы можете копировать и вставлять вашу папку каждый раз, когда вы хотите поэкспериментировать с новыми инструментами и программное обеспечение с открытым исходным кодом, которое вы нашли, но как только вы начнете использовать git, вам может понравиться, как легко быстро переключаться между ветками и объединять в свой главный проект определенные вещи, но не другие.
Вы можете сделать это ! Есть только несколько шагов, чтобы начать использовать git сегодня.
Во-первых, загрузите графический интерфейс. Хотя я обычно использую тот, который встроен в код Visual Studio, GitHub Desktop может быть проще для новичков.
- Создать Репозиторий, Клон хранилище или извлечение существующего хранилища
- Напишите Code & Commit с быстрым сообщением о том, что вы сделали
- Push ваши изменения обратно в программное обеспечение
- Создайте новую ветку и повторите шаги 3 и 4
- Объедините вашу ветку с мастером
Повторяйте снова и снова. В конце концов вы поймете это, и удивитесь, о чем шла речь. Git довольно крутой!