Любой, кто использует Git, или даже видел его, знает, что существует много терминов и модификаторов, за которыми нужно следить.
И держаться в курсе вам необходимо, так как это стало стандартом контроля версий для технических продуктов сегодня.
Но вместо того, чтобы просто ожидать, что вы запомните все, мы составили этот основной ресурс, полный важных команд, чтобы вы могли ссылаться на него и использовать Git как эффективно, так и продуктивно.
Не являетесь опытным пользователем Git (пока)? Это совершенно нормально.
Команды, которые мы рассмотрим здесь, варьируются от повседневных до более редких и сложных. И, как дополнительный бонус, каждая из них сопровождается советами о том, как вы можете использовать ее во время проекта разработки.
Мы начнем с информации о фоне Git, а затем завершим полным руководством о том, как можно использовать Git в реальной ситуации.
Краткий обзор: понимание Git, GitHub и системы контроля версий
Git это то, что его создатели называют платформой управления исходным кодом (SCM). Другими словами, это система контроля версий. Одна из тех, что бесплатна, удобна в использовании и поэтому лежит в основе многих известных проектов.
Что приводит нас к логичному вопросу, если вы не погружены в мир разработки: Что такое система контроля версий?
Создание чего-либо из кода часто требует множества попыток, ошибок и шагов. И, во многих случаях, сотрудничества.
Легко потерять или перезаписать важные элементы, над которыми вы много работали. Например, если вы когда-либо работали с коллегой в живом документе Google, вы понимаете, о чем мы говорим.
Инструмент управления версиями фактически сохраняет каждую итерацию вашего прогресса на протяжении проекта. Это полезно в случае, если вы хотите вернуться к предыдущей версии, чтобы просмотреть и взять определенные элементы для повторного использования — или даже восстановить более старую версию, если что-то в текущей сборке не работает как предполагалось.
Git установлен локально, что означает, что он находится на вашем компьютере, а не в облаке. Фактически, вам даже не нужно подключаться к интернету при его использовании!
Таким образом, он обеспечивает безопасное хранилище (часто называемое «репозиторием», которое является местом хранения кода) для разработчика, чтобы сохранять каждый «черновик» проекта, над которым он работает.
Git делает это еще на один шаг дальше с моделью ветвления, за которую он стал известен.
С Git разработчик может создавать различные кодовые «ветви», которые выходят из проекта. Эти ветви по сути являются копиями основного проекта, который ранее назывался «главным» проектом, но этот термин постепенно выходит из употребления.
Изменения в ветках не влияют на код основного проекта, если вы сами этого не захотите. Благодаря ветвлению, разработчики могут экспериментировать с новыми функциями или исправлять ошибки. Внесенные в ветку изменения не повлияют на основной код, если вы не выполните операцию под названием «слияние».
Git идеально подходит для владельцев сайтов или разработчиков, работающих над своими проектами. Но что делать, когда вам нужно работать с командой над проектом по программированию?
Познакомьтесь с GitHub.
GitHub — это платформа для размещения репозиториев Git.
Другими словами, это способ, с помощью которого вы можете перенести свои Git-репозитории с локального компьютера в интернет, обычно с целью обеспечения совместной работы над ними.
GitHub основан на облачных технологиях и является коммерческим, хотя основные функции можно использовать бесплатно при регистрации.
Основная функция GibHub заключается в том, чтобы позволить разработчикам совместно работать над одним проектом в режиме реального времени, удаленно внося изменения в код, проверяя работу друг друга и обновляя основной проект.
GitHub поддерживает основную функцию Git: предотвращение перезаписи и сохранение каждой версии проекта. Также добавлены множество дополнительных функций и дополнений, таких как увеличенное хранилище, быстрые среды разработки, написание кода с помощью искусственного интеллекта, поддержка аудита кода и многое другое. (Мы рекомендуем посетить страницу цен, чтобы узнать обо всех предложениях.)
Важно отметить, что GitHub — не единственный сервис в этой области. Среди альтернатив можно выделить Bitbucket, GitLab и другие.
Однако Git и GitHub, конечно, работают вместе как арахисовое масло и желе, как вы увидите немного позже в этой статье.
Прежде всего: полный список всех команд Git, с которыми должны быть знакомы разработчики и технические команды для успешной работы в этой среде контроля версий.
Github
GitHub — это облачный сервис, который разработчики используют для хранения своего кода, отслеживания новых изменений и сотрудничества с другими разработчиками. Это популярная платформа для совместной работы над проектами программного обеспечения в реальном времени.
Читать далее21 наиболее используемых команд Git, которые вам следует знать
Вы готовы к окончательному шпаргалке по Git?
В этом разделе мы рассмотрим команды Git, инструкции, собственно, которые вам нужно знать для успешного использования Git. Кроме того, мы дадим несколько советов о том, как вы можете использовать каждую из них в проекте.
Профессиональный совет для максимальной пользы от этого документа: нажмите «command + F» на Mac или «Ctrl + F» на Windows, чтобы открыть окно поиска и найти определённую команду, если вы ищете что-то конкретное.
git config
git config
— это полезная команда для настройки работы Git на трех уровнях: уровне операционной системы (system), уровне конкретного пользователя (global) и уровне конкретного репозитория (local).
Попробуйте git config
с помощью следующих действий:
git config --global user.email [your email]
Эта команда часто используется разработчиками сразу после установки Git для настройки их адреса электронной почты.
git config --global user.name [your name]
Для настройки вашего имени пользователя.
git config --local
Настройте свои локальные настройки, специфичные для репозитория. Это переопределит настройки Git по умолчанию на системном и глобальном уровнях.
git pull
git pull
— это ваша команда для получения кода из удалённого репозитория и загрузки его в ваш локальный репозиторий, который затем будет обновлён, чтобы соответствовать тому, что вы только что загрузили.
Этот акт слияния является основой для использования Git. И, это на самом деле «сокращение» для двух других команд: git fetch
затем git merge
.
Вот несколько способов, как обычно используется эта команда:
git pull [remote]
Получите конкретный удаленный репозиторий и объедините его с локальным, над которым вы работаете.
git pull --no-commit [remote]
Эта команда по-прежнему извлекает удаленный репозиторий, но не выполняет его автоматическое слияние.
Поскольку pull является одной из основных команд Git, существует множество способов его использования. Это руководство по командам ветвления Git предлагает еще больше примеров и некоторые новые комбинации, которые вы можете попробовать.
git fetch
git fetch
как самостоятельная команда загружает коммиты из удаленных репозиториев в локальные репозитории. Это дает вам возможность видеть и изменять код других разработчиков.
Давайте попробуем эту команду:
git fetch origin
Загружает копию удаленного репозитория origin и сохраняет ее локально. Ничего не изменяется и не объединяется, в отличие от того, что делает git pull
по умолчанию.
git fetch --all
Получить данные со всех удаленных репозиториев (включая origin).
git fetch --shallow-exclude=[revision]
Исключает коммиты из определенной ветки или тега.
Тег
Тег WordPress – это стандартная таксономия, которая позволяет вам категоризировать ваши публикации. Читатели могут затем кликнуть на тег статьи, чтобы просмотреть похожие статьи с тем же тегом.
Читать далееgit merge
Команда git merge
объединяет ветви (чаще всего две, но может быть больше), чтобы создать единую историю. Git выделит конфликты, возникшие при слиянии, для их исправления.
Опции для этой команды включают в себя:
git merge [branch name]
Используйте это для слияния изменений из указанной ветки в ветку, которую вы используете.
git merge --abort
Остановите слияние и восстановите проект до состояния до слияния. Эта команда идеально иллюстрирует, как Git помогает поддерживать старые версии кода для защиты прогресса проекта.
git add
git add
— это команда, которую используют, когда вы готовы «сохранить» копию вашей работы. Она часто используется вместе со следующей командой — git commit
— так как это добавляет (или «фиксирует») сохраненное в историю работы над проектом.
Вот несколько способов, которыми вы можете указать, что сохранить (или «разместить на временном сайте») с помощью этой команды:
git add [file]
Это подготавливает все внесенные вами изменения в конкретный файл, чтобы их можно было включить в следующий коммит.
git add [directory]
Как и выше, это подготавливает изменения в конкретной директории к коммиту.
git commit
git commit
— это вторая команда в троице создания и отслеживания изменений в Git.
Эта команда, по сути, говорит о сохранении любых изменений, сделанных с помощью команды git add
. Не вносить изменения в основной код, а просто безопасно их хранить.
Некоторые варианты использования этой команды включают:
git commit --amend
Изменяет последний коммит, вместо создания нового.
git commit -m [your message here]
Добавьте аннотацию к вашему коммиту с сообщением, которое указывается в скобках.
git push
git push
завершает цикл сотрудничества в Git. Он отправляет все зафиксированные изменения из локальных в удаленные репозитории. Отсюда другие разработчики проекта могут начать работать с обновлениями. Это противоположно команде fetch.
Вот как это использовать:
git push [remote] [branch]
Отправить указанную ветку, её коммиты и прикреплённые объекты. Создаёт новую локальную ветку в целевом удалённом репозитории.
git push [remote] --all
Отправить все локальные ветки в конкретный удаленный репозиторий.
git branch
Создавайте, редактируйте и удаляйте ветки в git с помощью команды git branch
.
Используйте команду branch следующими способами:
git branch [branch]
Это создает новую ветку, которую можно назвать, заменив слово в скобках.
git branch -c
Эта команда копирует ветку Git.
git push [remote repo] --delete [ branch name]
Удалите удаленную ветку Git, указанную в последнем наборе скобок.
git checkout
Используйте команду git checkout
, чтобы перемещаться между ветками в репозитории, с которым вы работаете.
git checkout [branch name]
Переключитесь на другую ветку Git, указанную в скобках.
git checkout -b [new-branch]
Одновременно создает новую ветку и переключается на нее. Этот ярлык сочетает git branch
и git checkout [new branch]
.
git remote
С помощью команды git remote
вы можете просматривать, создавать и удалять удаленные соединения, своего рода “закладки” к другим репозиториям. Это может помочь вам ссылаться на репозитории в вашем коде, не прибегая к поиску их полных, иногда неудобных имен.
Попробуйте эти удаленные команды:
git remote add [alias] [URL]
Добавьте удаленный репозиторий, указав его ссылку и присвоив ему псевдоним.
git remote -v
Получите список удаленных подключений и включите URL каждого из них.
git revert
git revert
отменяет изменения, создавая новый коммит, который обращает указанные изменения.
Один из способов (осторожно!) использования git revert
заключается в следующем:
git revert [commit ID]
Это отменит только изменения, связанные с конкретным указанным коммитом.
git reset
git reset
— это более рискованная и потенциально необратимая команда для отмены коммитов.
Эту команду следует использовать только в локальных или частных репозиториях, чтобы снизить риск прерывания работы людей, которые занимаются программированием в удаленных публичных репозиториях. Поскольку она может «осиротить» коммиты, которые затем могут быть удалены в ходе рутинного обслуживания Git, существует реальная возможность, что эта команда может стереть чью-то кропотливую работу.
Это сложная команда, которую следует использовать с осторожностью, поэтому перед первым применением мы настоятельно рекомендуем прочитать этот руководство по Git Reset от Bitbucket.
git status
git status
предоставляет информацию о вашем рабочем каталоге (здесь хранятся все исторические версии) и области подготовки (это своего рода «зона в разработке» между каталогом и репозиторием). С помощью этой команды вы можете узнать, в каком состоянии находятся ваши файлы.
Существует один основной способ использования этой команды:
git status
Посмотрите список подготовленных, неподготовленных и неотслеживаемых файлов.
git clone
Используйте git clone
для создания копии существующего репозитория. Это полезно для создания дубликата репо, с которым вы можете экспериментировать, не рискуя повредить что-либо, что доступно публике.
Вот некоторые варианты использования этой команды:
git clone [repository URL] --branch [branch name]
Клонируйте связанный репозиторий, а затем сразу перейдите к указанной ветке в нем.
git clone [repo] [directory]
Клонируйте конкретный репозиторий в конкретную папку на вашем локальном компьютере.
git init
Используйте команду git init
, чтобы создать новый репозиторий Git в виде подкаталога .git в вашем текущем рабочем каталоге. Это отличается от git clone
, так как позволяет создать новый репозиторий, а не только копировать существующий.
Наиболее распространённые применения этой команды включают:
git init
Там, где все начинается, этот код превращает вашу текущую директорию в репозиторий Git.
git init [directory]
С помощью этой команды вы можете превратить определенную директорию в репозиторий Git.
git init --bare
Это создает новый пустой репозиторий, из которого нельзя делать коммиты. Это создает полезную основу для совместной работы.
git rebase
git rebase
обладает возможностью переписывания истории, которая помогает поддерживать ваши коммиты аккуратными и чистыми.
Это опция, когда вам нужно интегрировать обновления в основную ветку с быстрым слиянием, которое показывает линейную историю.
git rebase [target branch name]
Перебазируйте вашу выбранную ветку на указанную целевую ветку.
git rebase [target branch name] -i
Инициируйте интерактивный rebase из вашей текущей ветки в другую целевую ветку.
Это еще одна сложная команда, которую не следует использовать в публичном репозитории, так как она может удалить важные элементы истории проекта. Чтобы узнать больше о том, как работают стандартная и интерактивная версии этой команды, мы снова рекомендуем Bitbucket и их руководство по git rebase.
git diff
«Diffing» — это практика отображения различий между двумя наборами данных.
Команда git diff
показывает различия между источниками данных Git, такими как комментарии, файлы и т.д.
Варианты использования этой команды включают в себя:
git diff --staged
Показывает разницу между тем, что добавлено в индекс, но еще не зафиксировано.
git diff [commit ID 1] [commit ID 2]
Эта команда сравнивает изменения между двумя разными коммитами.
git tag
Команда git tag
указывает на момент в истории Git, обычно это релиз версии. Теги не изменяются как ветки.
git tag [tag name]
Используйте это для создания тега и сохранения состояния репозитория на данный момент.
git tag -d [tag name]
Хотите удалить этот тег? Запустите эту команду.
git rm
Команда git rm
удаляет файлы из области подготовки и рабочего каталога.
Вот несколько способов попробовать git rm
:
git rm [file]
Это основная команда для подготовки файла к удалению в следующем коммите.
git rm --cached
Это удаляет файл из временного сайта, но оставляет его в рабочем каталоге, так что у вас все еще будет локальная копия на случай, если она вам понадобится.
git log
git log
предоставляет, так сказать, журнал всех коммитов в истории репозитория.
Готовы попробовать? Поехали:
git log [SHA]
Secure Hash Algorithm (SHA) — это уникальный идентификатор для каждого коммита. Используйте эту команду для отображения определенного коммита, а также всех других коммитов, сделанных ранее.
git log --stat
Команда показывает, какие файлы были изменены в каждом коммите, количество добавленных/удаленных строк и количество отредактированных файлов и строк.
git show
Эта командная строка git show
предоставляет детали по различным объектам Git, таким как деревья, теги и коммиты.
Вот несколько способов использования этой команды:
git show [SHA]
Самая простая из команд git show
. Используйте SHA, о котором мы только что узнали выше, чтобы показать детали любого объекта.
git show [SHA]:path/to/file
Это покажет определенную версию файла, которую вы ищете, когда вы указываете его SHA.
Все еще изучаете, как пользоваться Git, есть вопросы по вышеупомянутым командам или просто хотите узнать еще больше способов, которыми можно манипулировать вашим кодом тысячами различных способов?
Мы должны отметить учебные материалы по Git от Bitbucket как отличный, глубокий и взаимосвязанный ресурс, который может помочь вам достичь большинства ваших целей с использованием Git.
И вам следует идти. В конце концов, открытый исходный код и технология Git, которая стоит за большей частью его, это будущее бизнеса.
Команды в реальной жизни: как разрабатывать на WordPress используя Git + GitHub
Мы только что представили вам множество возможно новых терминов и уловок.
Если вы не особо знакомы с Git, может быть сложно понять, как все это может работать в реальной ситуации.
Итак, мы завершим обзор тем, как использовать Git и GitHub для настройки себя на разработку на сайте WordPress.
1. Установите WordPress.org
Сначала о WordPress.
Вы собираетесь установить экземпляр WordPress.org (узнайте разницу между WordPress.com и WordPress.org, если вы не знакомы) и создать локальное временное окружение на вашем компьютере.
Если у вас еще нет хорошего процесса для этого, нам нравится инструмент для разработки WP от Local.
2. Установить Git
И вот настало время для работы с Git.
Установите Git, если еще не сделали этого. Найдите последнюю версию на сайте Git.
Многие компьютеры Mac и Linux уже имеют установленный Git. Проверьте ваш, открыв интерфейс командной строки (например, Terminal на Mac или Git Bash на Windows) и введя первую команду этого учебника:
git --version
Если Git установлен, вы получите номер версии. Если нет, то эта инструкция по установке Git поможет вам начать.
3. Создайте локальный репозиторий с Git
Теперь мы создадим ваш локальный репозиторий Git.
Получите доступ к папке вашей темы WordPress (в этом примере используется Twenty Twenty-One) с помощью этой команды:
cd/Users/[you]/Documents/Websites/[website]/wp-content/themes/twentytwentyone
Замените [you] и [website] на названия своих папок. Затем инициализируйте эту директорию как репозиторий с помощью этой команды:
git init
Чтобы добавить каждый файл в папку к индексу, введите:
git add
Зафиксируйте свои изменения с помощью команды, которая поможет организованно сохранять вашу историю:
git commit -m “first commit"
Ваш локальный репозиторий настроен!
4. Создать удаленный репозиторий на GitHub
На этом этапе вам следует создать GitHub аккаунт, если у вас его еще нет.
После создания и входа в систему вы можете создать удаленный репозиторий из вашей панели управления GitHub.
Когда вы закончите следовать инструкциям по настройке вашего нового проекта, пришло время добавить вашу тему WordPress в ваш новый удаленный репозиторий в GitHub.
5. Добавление проекта WordPress в GitHub (Обучение отправке изменений)
Используйте эти команды в Git, чтобы загрузить вашу тему WordPress в GitHub:
git remote add origin [repo URL]
git push -u origin master
Замените URL в скобках на ссылку на репозиторий, который вы только что настроили в GitHub.
Далее вас попросят ввести ваше имя пользователя и пароль GitHub.
После выполнения этих действий файлы, зафиксированные в вашем локальном репозитории до этого момента, будут отправлены в ваш репозиторий на GitHub.
6. По желанию: Получение (также известно как Пул) обновлений
Теперь, когда вы отправили изменения из вашего локального репозитория в удаленный репозиторий на GitHub, последнее, что нужно изучить, — это как забирать изменения, чтобы вы могли делать наоборот — добавлять обновления из удаленного репозитория в ваш локальный.
Конечно, если вы работаете над проектом по программированию самостоятельно, вам не потребуется выполнять этот шаг. Однако это полезно знать, так как это становится необходимым, как только вы начинаете сотрудничать с командой, все члены которой вносят и отправляют обновления.
Итак, мы собираемся загрузить обновления локально, используя команду fetch:
git fetch [URL]
Не забудьте заменить [URL] на ссылку на репозиторий, из которого вы делаете выгрузку.
Таким образом, изменения извлекаются из GitHub и копируются в ваш локальный репозиторий, так что оба репозитория становятся одинаковыми. Вы синхронизированы и готовы работать с последней версией проекта!
Вам все еще нужна помощь с Git?
Для более подробного ознакомления с вышеописанным процессом ознакомьтесь с нашим полным руководством по использованию GitHub для разработки WordPress.
Или, что еще лучше, обратитесь к нашим экспертам по разработке в DreamHost.
Позвольте нам заниматься разовыми настройками сайта или полным управлением сайтом, чтобы ваша команда могла вернуться к разработке и управленческой работе, которая двигает ваш бизнес вперед.
Вы мечтаете, мы программируем
Воспользуйтесь 20-летним опытом программирования, выбрав нашу услугу веб-разработки. Просто сообщите нам, что вы хотите для вашего сайта — мы возьмемся за дело.
Узнать больше