<aside> <img src="/icons/calendar-day_gray.svg" alt="/icons/calendar-day_gray.svg" width="40px" />
13 июня 2026
</aside>
<aside> <img src="/icons/clock-alternate_lightgray.svg" alt="/icons/clock-alternate_lightgray.svg" width="40px" />
20 минут
</aside>
Команда сталкивается с частыми и сложными конфликтами при слиянии ветки фичи обратно в main. Ветка фичи разрабатывается длительное время (несколько недель) без регулярных интеграций изменений из main. Оцените основную причину возникновения этих конфликтов.
В проекте необходимо исключить из отслеживания все новые файлы в директории logs, но сохранить уже закоммиченные. Какой метод выбрать?
git rm --cachedКак добавить игнорирование node_modules только в корне проекта?
/node_modules/*/node_modules/node_modules//node_modules/./node_modules/Вы работаете в ветке feature/new-customer-model, которая была создана командой git checkout -b feature/new-customer-model. После завершения разработки вы пытаетесь отправить изменения в удаленный репозиторий origin и выполняете команду git push origin.
Какой результат вы получите и почему?
origin не может быть именем удаленного репозиторияpush необходимо подписать коммиты с помощью git push -sКакой командой можно зафиксировать только часть изменений в файле при подготовке коммита?
git add -pgit commit --amendgit reset --mixedgit stash -ugit cherry-pickПосле завершения поиска проблемного коммита с помощью git bisect, какую команду следует выполнить для возврата к нормальной работе?
git bisect resetgit bisect goodgit bisect startgit bisect loggit bisect badЧто содержит файл .gitmodules в проекте с подмодулями?
Какой подход минимизирует риск "сломать" пользователям деплой при публикации горячего патча к релизу?
lightweight tagВаш коллега, работая над коммитами в ветке main, заметил: история коммитов в ней содержит коммит 325b012 с очень большим файлом debug.log и другими изменениями. Этот файл уже удален из репозитория в коммите 8dd9645, но всё еще существует в истории и усложняет работу с репозиторием. Он выполнил какую-то операцию с деревом коммитов и удалил этот файл из всех предыдущих коммитов.
Начальное состояние ветки — вывод git log --oneline:
1 f1fe759 (HEAD -> main) Fixed documentation and comments
2 8dd9645 Removed debug.log
3 c60f0ed Finished main feature
4 325b012 Added model implementation
5 e21d3cc Initial commit
Итоговое состояние ветки (вывод git log --oneline):
1 62db399 (HEAD -> main) Fixed documentation and comments
2 af98fe5 Removed debug.log
3 f7048f0 Finished main feature
4 4d1de5 Added model implementation
5 e21d3cc Initial commit
Какую операцию из перечисленных выполнил ваш коллега?
git filter-branch --tree-filter "rm -f debug.log" -- --allgit filter-branch --index-filter "git rm --cached debug1.log" -- --allgit rebase -i для редактирования коммита и удаления файлаgit commit --amend, удалив файл вручную, а затем переписал историю командой git push --forcegit cherry-pick для удаления файла и пересоздал коммиты вручнуюРазработчик присоединился к проекту и склонировал основной репозиторий командой git clone <URL_проекта>. После этого он обнаружил, что каталоги, предназначенные для подмодулей (vendor/libA, external/libB), пусты, хотя они определены в файле .gitmodules. Какую команду необходимо выполнить в корневой директории проекта, чтобы загрузить код всех подмодулей согласно их зафиксированным версиям в основном проекте?
git submodule update --init --recursivegit submodule pull --allgit submodule sync --recursive && git submodule updategit submodule fetch --allgit clone --recurse-submodules <URL_проекта> . (в текущий каталог)В проекте изменился адрес репозитория подмодуля. Как обновить его в основном проекте?
.gitmodules, затем git submodule syncgit move --submodulegit add --update-submodulesgit submodule update --remotegit remote set-urlВ каком случае использование Git Subtree подходит лучше Submodule?
Какой Git-хук можно использовать для проверки содержимого коммита на наличие секретных ключей до отправки в репозиторий?
После слияния ветки feature/payment-logic в main в продакшен-среде начались сбои. Вы выяснили, что ошибка была в двух коммитах внутри этой ветки. Из-за сложной зависимости между другими изменениями откат всей ветки невозможен.
Как Git Flow рекомендует оформлять новый релиз приложения?