Git собеседования – Telegram
Git собеседования
612 subscribers
98 photos
183 links
Подготовка к собеседованиям в IT

Еще больше разобранных вопросов для подготовки на сайте https://frontview-it.ru

Frontend - @frontview_it
Backend - @frontview_backend
Все IT вакансии - @frontview_all_vacancies
Download Telegram
Git stash — механизм, позволяющий временно сохранить незакоммиченные изменения и восстановить их позже, не теряя текущее рабочее состояние. Подходит для ситуаций, когда требуется переключить ветку или выполнить обновление репозитория, а изменения ещё не готовы к коммиту.

🔘При использовании команды git stash все изменения перемещаются в специальное хранилище, а рабочая директория возвращается к чистому состоянию.

😊Для просмотра сохранённых состояний используется git stash list.

🔘Восстановить изменения можно с помощью git stash apply.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Git собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍113
Использование Git в команде требует соблюдения нескольких ключевых практик для эффективного управления кодом и совместной работы.

1️⃣ Создание веток: Каждый разработчик должен работать в своей ветке, чтобы избежать конфликтов.

2️⃣ Коммиты: Делать частые и осмысленные коммиты с понятными сообщениями. Это упрощает отслеживание изменений.

3️⃣ Pull Requests: Перед слиянием изменений в основную ветку, использовать pull requests для код-ревью.

4️⃣ Решение конфликтов: Конфликты неизбежны. Следует использовать инструменты Git для их разрешения и обсуждать сложные случаи с командой.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Git собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍102
🔥 Форк (fork) — это копия чужого репозитория, включающая всю историю изменений и позволяющая экспериментировать вне исходного проекта.
Часто используется для участия в open-source: после внесения собственного кода создаётся pull request, который отправляется в исходный репозиторий.
Форки упрощают совместную разработку, сохраняя свободу действий и предотвращая риски для оригинального кода.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Git собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥2
➡️ Индексация — это процесс добавления изменений в область промежуточного хранения (staging area), где они подготавливаются для последующего коммита. Это позволяет контролировать, какие изменения будут включены в следующий коммит, обеспечивая более точное управление версионностью проекта.

✈️ Git собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍71
Git собеседования pinned «ℹ️Подписывайся на наши новые каналы! 🖥 JS собеседования 🖥 Backend собеседования»
🟠Чтобы откатиться на предыдущий коммит в Git, можно использовать команду git reset. Она изменяет состояние текущей ветки и рабочей директории.

git reset --hard HEAD~1


🟠Эта команда перемещает текущую ветку на предыдущий коммит и сбрасывает все изменения в рабочей директории. Важно помнить, что --hard удаляет все несохраненные изменения, поэтому следует использовать с осторожностью.

🟠Для сохранения изменений в рабочей директории используется --soft:

git reset --soft HEAD~1


Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Git собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥1
Файл .gitignore используется для указания файлов и директорий, которые должны быть проигнорированы системой контроля версий и не добавляться в репозиторий. Это позволяет исключать из отслеживания временные файлы, конфиденциальные данные и другие ненужные артефакты, поддерживая чистоту и безопасность проекта.

✈️ Git собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥2
1️⃣ Удаление локального тега: Используется команда git tag -d <tagname>, где <tagname> — имя удаляемого тега.

2⃣ Удаление тега в удалённом репозитории: Выполняется командой git push origin --delete <tagname>, чтобы удалить тег из удалённого репозитория.

git tag -d v1.0
git push origin --delete v1.0


Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Git собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81
🔥 Проверить установленную версию можно с помощью команды git --version. Эта команда выводит текущую версию Git, установленную в системе, что полезно для проверки совместимости с проектами или обновления до более новой версии.

✈️ Git собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7👨‍💻1
▶️Git отличается от других систем контроля версий своей распределенной архитектурой, что позволяет каждому пользователю иметь полную копию репозитория, включая всю его историю. Это обеспечивает высокую скорость операций и независимость от центрального сервера. Git также поддерживает мощные инструменты ветвления и слияния.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Git собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7💯1
🛑 Операция git pull используется для обновления локального репозитория последними изменениями из удалённого репозитория. Она сочетает в себе две команды: git fetch и git merge.

🛑 Сначала git fetch загружает изменения из удалённого репозитория, а затем git merge объединяет эти изменения с текущей веткой.

git pull origin main


🛑 Эта команда обновляет локальную ветку main последними изменениями из удалённой ветки main на сервере origin.

🛑 Использование git pull помогает поддерживать локальный репозиторий в актуальном состоянии.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Git собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍102
Git-flow — это модель ветвления для Git, которая упрощает управление разработкой и релизами в проектах. Она включает в себя использование основных веток, таких как main и dev, а также временных веток для новых фич, что помогает структурировать и автоматизировать процесс разработки.

✈️ Git собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍62
❗️ Команда git init используется для инициализации нового репозитория Git в текущей директории. Она создает скрытую папку .git, которая содержит все необходимые файлы для управления версиями проекта. Это первый шаг при создании нового репозитория или при переносе существующего проекта под контроль версий Git.

# Инициализация нового репозитория
git init


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

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Git собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥1
🖇 Rebase — это процесс переноса или объединения последовательности коммитов на новую базу. Он используется для упрощения истории коммитов и устранения конфликтов. Основные шаги:

1⃣ Перемещение коммитов: текущая ветка перемещается на вершину другой ветки.
2⃣ Применение коммитов: каждый коммит из текущей ветки повторно применяется на новой базе.


git checkout feature-branch
git rebase main


✔️ Rebase делает историю линейной, что упрощает её чтение. Однако, его следует использовать с осторожностью, так как он изменяет историю коммитов.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Git собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍92
Основные недостатки SVN по сравнению с Git включают в себя централизованную архитектуру, которая делает работу без подключения к серверу невозможной, и более медленную обработку ветвлений и слияний. Git, будучи распределённой системой контроля версий, позволяет работать локально и обеспечивает более гибкое управление ветками и историями изменений.

✈️ Git собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥1
🍒 git cherry-pick — это команда, которая позволяет выбрать один или несколько коммитов из одной ветки и применить их в другую ветку. Это полезно, когда необходимо перенести конкретные изменения без слияния всех изменений из исходной ветки.


# Переключение на целевую ветку
git checkout target-branch

# Применение коммита с указанным хешем
git cherry-pick <commit-hash>


В случае конфликтов, их нужно разрешить вручную, после чего завершить процесс с помощью git cherry-pick --continue.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Git собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍91
Теги используются для создания постоянных меток на определенных коммитах, обычно для обозначения релизов или важных точек в истории проекта. Они позволяют легко возвращаться к конкретным версиям кода и бывают аннотированными, содержащими метаданные, или легковесными, представляющими собой простые указатели на коммиты.

✈️ Git собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥3
Добавление файлов в репозиторий включает несколько шагов. Сначала необходимо убедиться, что рабочая директория актуальна, выполнив команду git pull. Затем новые или измененные файлы добавляются в индекс с помощью команды git add. Для добавления всех изменений можно использовать git add ..

# Добавление всех изменений в индекс
git add .


После этого создается коммит с описанием изменений:

# Создание коммита с сообщением
git commit -m "Описание изменений"


Наконец, изменения отправляются в удаленный репозиторий с помощью команды git push.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Git собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥1
🔽 git pull объединяет команды git fetch и git merge, загружая изменения из удаленного репозитория и автоматически сливая их с текущей веткой. git fetch только загружает изменения, не изменяя локальную рабочую копию, что позволяет просмотреть изменения перед их слиянием.

✈️ Git собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥3
📌 REMOTE — это ссылка на удаленный репозиторий, который хранится на сервере. Он позволяет синхронизировать локальные изменения с удаленными и наоборот.

Основные команды для работы с REMOTE:

▶️ git remote add <name> <url>: добавляет новый удаленный репозиторий.
▶️ git remote -v: отображает список удаленных репозиториев.
▶️ git fetch <remote>: загружает изменения из удаленного репозитория без слияния.
▶️ git pull <remote>: загружает и сливает изменения из удаленного репозитория.
▶️ git push <remote> <branch>: отправляет изменения в удаленный репозиторий.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Git собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍61
Для удаления локальной ветки используется команда git branch -d <branch_name>, которая удаляет ветку, если она уже слита. Для принудительного удаления, даже если ветка не слита, используется git branch -D <branch_name>.

✈️ Git собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥1