Практическое руководство для начинающих

1 / Немного терминологии

Каталог: каталог - это место, где ваши файлы хранятся на вашем компьютере. Вы можете получить доступ к каталогу с помощью командной строки (Терминал для MAC, Linux для Windows). Файлы организованы в иерархическую файловую систему в виде древовидной структуры. Таким образом, каталог, содержащийся внутри другого каталога, называется подкаталогом. Вот почему мы часто используем термины родительский и дочерний для описания отношений между каталогами и подкаталогами. Каталог без родителя (наверху дерева) является корневым каталогом.

Система контроля версий: системы контроля версий - это программные инструменты, которые помогают разработчику управлять изменениями исходного кода с течением времени. Допустим, вы работаете над проектом, программное обеспечение для контроля версий будет отслеживать в специальной базе данных внесенные вами изменения. Таким образом, контроль версий позволяет при необходимости вернуться к более ранним версиям, защищая исходный код. Контроль версий приобретает еще больше волшебства, работая в команде, и все разработчики его используют.

Git: Git - это распределенное программное обеспечение для управления версиями, которое сегодня чаще всего используется разработчиками. Итак, Git - это программное обеспечение системы контроля версий, которое отслеживает наши изменения в наших компьютерных файлах. Git позволяет координировать нашу работу над этими файлами между несколькими людьми. Git - это самый фундаментальный инструмент для управления исходным кодом. Вот отличное руководство, чтобы начать работу с Git и лучше понять его использование: http://product.hubspot.com/blog/git-and-github-tutorial-for-beginners

Репозиторий: как только вы попадете в мир Git, волшебным образом появится много новых слов. Вроде репозиторий. Я нашел это определение довольно ясным: Репозиторий - это просто место, где хранится история вашей работы. Он часто находится в .gitsubdirectory вашей рабочей копии - копии самого последнего состояния файлов, над которыми вы работаете ».

Ветвление: вот еще одно волшебное слово из мира Git. Ветвление - это практика Git, состоящая из создания копий вашего кода. Эти копии будут использоваться для работы в параллельных версиях. Поскольку исходная версия будет сохранена, вы сможете работать с веткой или вносить различные изменения в каждую копию. Эти копии называются ветвями; тогда как исходная версия называется главной веткой. Ветвление облегчает разработку исправлений ошибок, добавление нового кода и интеграцию новых версий после их отдельного тестирования. Таким образом, ветвление обеспечивает стабильность вашей работы.

2 / Создайте новый проект на GitHub

… И клонировать его на свой жесткий диск

(См. этот учебник, чтобы начать работу с gitHub, если у вас еще нет учетной записи. Также этот ответ на Quora)

Итак, как нам начать новый проект? Конечно, с gitHub! Войдите в свой профиль на gitHub, перейдите в Хранилища и нажмите Создать.

Оказавшись там, дайте имя своему репозиторию, напишите краткое описание того, о чем ваш проект, сделайте его общедоступным (или нет) и сохраните. Также проще добавить файл .gitignore, поскольку он понадобится вам позже.

Поздравляю! Вы только что создали свой первый репозиторий на gitHub: smiley:

Пришло время клонировать репозиторий на жесткий диск:

1 / Скопируйте ссылку на свой репозиторий: в своем профиле gitHub нажмите Клонировать или загрузить под своим именем репозитория.

2 / Перейдите в консоль, скопируйте предоставленную ссылку и вставьте ее в свой каталог, где вы хотите, чтобы она была сохранена:

git clone https://github.com/user_name/repository_name

«Ваш проект только что был создан в вашем браузере»

Настройте свой проект

Теперь мы можем настроить основные файлы, которые нам нужны для работы над нашим проектом. В моем случае я создаю нужные мне папки и файлы. Структура каталогов выглядит примерно так:

MyDirectory
|- index.html
|- app.js
|- style.css

Это командная строка, которую я использую для создания файлов через терминал:

  • cd repository_name
  • touch index.html app.js style.css
  • Если вам нужна более сложная структура, вы также можете создать папку, набрав mkdir <folder_name>

Откройте свой любимый редактор: ваши файлы созданы!

С нашей консоли мы можем 1 / git commit и 2 / git push визуализировать наши изменения в нашей учетной записи GitHub #accomplishmentFeeling

3 / Используйте Git Flow для эффективного ветвления

Git Flow поможет нам быть организованными (OMG). Да, программирование во многом связано с организацией. Настройка нашей среды каталогов и рабочего процесса позволит нам быть более эффективными, делать меньше ошибок, лучше делиться с другими и работать как настоящий программист. Никогда не рано начинать!

Почему git-flow?

Каждый раз, когда мы хотим работать над определенной проблемой, мы создаем новую ветку функции с помощью Git. Легко.

Как видно из терминологии, Git - это программное обеспечение, позволяющее разработчикам управлять изменениями в документах, компьютерных программах, крупных веб-сайтах… вы называете это. Эти изменения упрощаются с помощью ветвления.

Зачем мне создавать ветви? Представьте, что у вас есть основной документ (главная ветвь). Вы хотите улучшить свой код, исправить ошибку и т. Д. Вам нужно будет внести изменения в основной документ. Все мы знаем, что эти изменения могут просто разрушить то, что вы делали до «нет! Мое приложение больше не работает! »

Без проблем. Captain git-flow поможет вам с этим справиться. Вместо того, чтобы напрямую изменять ваш основной документ, вы создадите новый документ (функцию ветки) с точно таким же кодом вашего основного документа и начнете работать над этой новой ветвью функции. Как только вы будете удовлетворены своими улучшениями / исправлениями, вы сможете объединить свои изменения в основной документ (слияние функциональной ветки с основной веткой).

Мы могли бы создать ветвление с помощью raw git. Здесь я познакомлю вас с git-flow для этого. Почему? Git-flow - это просто расширение git, позволяющее работать лучше, вместо использования raw git. Вот пример, почему мы должны использовать git flow по сравнению с git:

(Подробное сравнение можно посмотреть здесь)

Настройка git-flow

Сначала установите git-flow в свой каталог: brew install git-flow-avh

Инициализировать git-flow

Затем инициализируйте git-flow в консоли, набрав git flow init: это инициирует поток git в вашем репозитории и автоматически создает главную ветку + ветку разработки + инициировать ветки функций. Просто нажмите клавишу ВВОД, чтобы ответить на все вопросы, которые вам задает браузер. По окончании инициализации мы автоматически перейдем в ветку разработки.

У вас должно получиться что-то вроде этого:

И это все! Git-flow установлен и инициализирован. Теперь вы можете легко переключаться с ветки на ветку и наслаждаться тестированием кода.

Перейдите сюда, если хотите узнать больше о функциях git-flow.

Создавайте новую ветку функций git каждый раз, когда вы хотите работать над определенной частью вашего кода:

Просто введите в консоли git flow feature start <awesome_feature_name>

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

Не забудьте выполнить слияние с веткой разработки, когда закончите с веткой функции git.

Убедившись, что наша функциональная ветка git работает, мы можем объединить ее с веткой разработки, набравgit flow feature finish <awesome_name> в вашем терминале. Это автоматически объединит нашу функцию с нашей веткой разработки.

Как мы можем увидеть наши изменения на GitHub?

1 / Зайдите в свой терминал: git pull, затем git push

2 / Обновите GitHub.

Звучит так просто, но ветвление и использование git требуют некоторой практики. Что нормально! Но, возможно, иногда ожидайте сообщения об ошибке или даже странных ветвлений. Круто то, что мы всегда можем это преодолеть # спасибо, Google ✌️

Эта статья является частью моей серии «Как получить поддержку с помощью инструментов разработчика - практическое руководство для начинающих». Дополнительные советы можно найти по ссылкам ниже!

Удачного кодирования! 🎉

Первоначально опубликовано на gist.github.com.