GIT ваш код включен!
Github в настоящее время является одним из самых популярных и стандартных инструментов, используемых сегодня в сфере технологий. Вы видите его в каждом резюме, каждой публикации о вакансии, и его даже называют крупнейшим хостом кода в мире. Здесь мы рассмотрим основные команды Github, которые я использую изо дня в день, а также некоторые ситуационные команды.
Оглавление:
- Введение в Гитхаб.
- Основные команды Git.
- Заключение.
Введение в Github:
Github — это инструмент управления кодом контроля версий, используемый разработчиками по всему миру. Это позволяет пользователям отслеживать и контролировать изменения в коде даже на уровне сотрудничества с другими разработчиками. Каждый проект на Github хранится в собственном репозитории или репозитории. Разработчики могут использовать ветвление для обновления своих проектов или разрабатывать новые функции и помещать их в новую ветку, чтобы избежать конфликтов с основной веткой. Когда пользовательская ветка одобрена владельцем проекта или старшим разработчиком, они могут объединить эту ветку функций с основной веткой. Основная ветвь выступает в качестве источника правды для всех разработчиков в команде как полная рабочая версия проекта без каких-либо незавершенных функций.
Основные команды Git:
- Команды учетных данных пользователя:
— git config --global user.name "enter username"
:
Устанавливает имя пользователя для кредита при просмотре истории версий git.
— git config --global user.email "enter email"
:
Устанавливает адрес электронной почты пользователя при просмотре истории версий git.
- Загрузка нового репозитория:
— git clone
(HTTPS):
Обмен данными по веб-протоколу. Позволяет клонировать онлайн-репозиторий с использованием HTTPS. Здесь мы клонируем проект open_weather_app из Github, используя HTTPS, в наш текущий локальный каталог. Одна из причин, по которой это может пригодиться, заключается в том, что с меньшей вероятностью он будет заблокирован вашим брандмауэром. Он обеспечивает быстрый способ загрузки репозитория, который вам нужен.
— git clone
(SSH):
использует уникальный и длинный ключ аутентификации. Сложность ключа затрудняет утечку и не может быть скомпрометирована во время утечки данных, что делает его более безопасным в долгосрочной перспективе. Хотя использование SSH требует некоторой предварительной настройки, оно позволяет пользователю мгновенно подключиться к удаленному репозиторию, из которого изначально был клонирован проект.
- Создание нового репозитория в командной строке:
— git init
Инициализирует файл вашего проекта.
— git add {filename} OR git add .
Также известно как «подготовка файла(ов)» для фиксации. Добавляет имя файла, который вы хотите включить в фиксацию для загрузки в ваш репозиторий Github. .
в git add .
означает, что вы хотите, чтобы все ваши файлы были добавлены в вашу фиксацию. Пожалуйста, имейте в виду, что нельзя включать {}
вокруг имени файла.
— git rm {filename}
ИЛИ git rm .
:
В качестве альтернативы удаляются файлы, которые необходимо зафиксировать в вашем репозитории Git. .
в git rm .
означает, что вы хотите, чтобы все ваши файлы были удалены из вашей фиксации. Пожалуйста, имейте в виду, что нельзя включать {}
вокруг имени файла.
— git reset {filename}
:
Удаляет файл, но сохраняет изменения, которые вы сделали в текущем рабочем каталоге. Пожалуйста, имейте в виду, что нельзя включать {}
вокруг имени файла.
— git commit -m "first commit"
Подготовьте (настройте) ваши файлы, которые вы хотите загрузить в свой репозиторий Github. Вы также можете написать любой комментарий, где написано «первый коммит». Идеальный вид комментариев будет касаться того, что вы сделали с этой текущей загрузкой, изменили или намеревались сделать с этим новым толчком.
— git branch -M main
Позволяет проверить, к какой ветке вы подключены в вашем репозитории. Мы расскажем, что такое ветка, позже.
— git remote add origin {url}
Здесь вы укажете URL репозитория, в который вы пытаетесь загрузить файл проекта. В приведенном выше примере URL имеет вид [email protected]:ra1993/project_3.git
Пожалуйста, имейте в виду, что не следует включать {}
вокруг URL.
— git push -u origin main
И вот! Эта команда вытолкнет ваш коммит из его промежуточной области и отправит его в указанный вами онлайн-репозиторий.
- Отправка изменений в существующий репозиторий:
— git remote add origin {url}
:
Здесь мы устанавливаем URL-адрес репозитория, куда мы хотим загрузить наши изменения. Помните, что не следует включать {}
вокруг URL-адреса.
— git branch -M branch
:
Еще раз убеждаемся, что попали в нужную ветку.
— git push -u origin main
:
Отправьте изменения в свой репозиторий!
- Просмотр и сравнение журналов или информации об объекте:
— git log
:
Показывает историю коммитов для текущей ветки. Каждый коммит содержит любые изменения/обновления, которые вы сделали в своем локальном репозитории до или после того, как он будет зафиксирован и отправлен в ваш удаленный репозиторий.
→commit:
показывает ваш идентификатор фиксации. для каждого из ваших коммитов на протяжении всей истории ветки, в которой вы находитесь.
→Автор:
указывает имя пользователя и адрес электронной почты, связанные с отправкой коммита.
→Дата:
дата и время отправки фиксации.
→комментарий:
комментарий, выдаваемый для каждой фиксации, описывающий, что произошло, что было сделано/должно быть сделано во время отправки фиксации в удаленный репозиторий.
→HEAD -> main, origin/main, origin/HEAD):
Указывает, на какую фиксацию вы настроены. Вы можете изменить свою фиксацию на предыдущие, если планируете внести какие-либо изменения или хотите вернуться к предыдущей версии ветки.
— git status
:
Эта команда отображает текущее состояние вашего рабочего каталога в промежуточной области. Он показывает вам, какие изменения подготовлены, а какие нет, и какие файлы отслеживаются, а какие не отслеживаются в Git.
→На главной ветке:
Указывает, к какой ветке мы подключены в нашем репозитории.
→Ваша ветка обновлена с помощью «origin/main»:
Указывает, что ваша локальная ветка (на вашем компьютере) и удаленная ветка (репозиторий GitHub) указывают на один и тот же коммит. Эта общая фиксация имеет текущий статус совпадения для каждого файла в обоих репозиториях.
→Изменения, не подготовленные для фиксации.
Указывает, что вы не зафиксировали никаких новых изменений, внесенных в файлы в вашей области подготовки. В этом случае изменения, внесенные в мои файлы g_drive.py и main.py, а также удаление моего py_drive.py не были зафиксированы в моей текущей промежуточной области.
→Файлы без отслеживания.
Сообщает, какие файлы не отслеживаются git. Общее правило, когда вы думаете о том, какие файлы вам нужно добавить в репозиторий git, заключается в том, что этот файл нужно редактировать в вашей среде IDE. Эти файлы могут включать в себя, помимо прочего, сценарии/файлы кодирования, установочные файлы, файлы txt и т. д., в отличие от файлов, которые вы, возможно, не захотите загружать, которые могут быть наборами данных, ключами API и т. д. Прямо сейчас есть недавно созданный py_drive_dir созданный мной каталог, который не отслеживается. Вы можете добавить py_drive_dir с git add py_drive_dir
или git add .
.
Как только вы снова запустите git status, вы увидите, что git распознает новые изменения, которые необходимо зафиксировать для вашего следующего нажатия. Теперь мы видим, что g_drive.py и main.py готовятся к следующему пушу.
Отделение и слияние:
— git branch
:
Список всех веток в вашем репозитории. Звездочка указывает, к какой ветке удаленного репо вы подключены в данный момент.
— git branch {branch_name}
:
Создает новую ветку в вашем текущем коммите. Пожалуйста, имейте в виду, что нельзя включать {}
вокруг названия ветки.
— git checkout {branch_name}
:
Позволяет переключиться на другую ветку в вашем удаленном репозитории. Пожалуйста, имейте в виду, что нельзя включать {}
вокруг названия ветки. Здесь мы переходим от основной ветки к ветке_2.
— git fetch
:
Загружает новые коммиты, файлы и обновления из удаленного репозитория. Это удобно, когда вы пытаетесь увидеть, над чем работают другие, и есть ли у них какие-либо конфликты с текущей рабочей веткой.
— git merge
OR git merge {branch_name}
:
Объединяет текущую или выбранную историю ветки с вашим локальным репозиторием в одну ветку. Необходимо убедиться, что принимающая ветвь и объединяющая ветвь обновлены. Слияние включает изменения из обоих коммитов. Это также помогает избежать любых конфликтов слияния, помечая их и запрашивая у пользователя разрешение на то, как действовать с конфликтами слияния.
— git pull
:
представляет собой комбинацию git fetch
и git merge
. Он извлекает обновления из удаленного репо, а затем объединяет новые обновления с вашим текущим репо.
Вывод:
Github, являющийся отраслевым стандартом для программистов всех уровней, дисциплин и организаций, действительно оказал большое влияние на современные технологии. Это не только упростило процесс разработки, но и создало множество избыточностей для обеспечения контроля версий, повышения стабильности кода, сокращения времени совместной работы между разработчиками, использования веток для разработки функций, интеграции и многих других преимуществ!