atesting.ru Собеседование 60+ вопросов для собеседований по Git, которые вам нужно подготовить в 2021 году

60+ вопросов для собеседований по Git, которые вам нужно подготовить в 2021 году

В этом посте мы перечислили популярные вопросы и ответы на собеседовании по Git, которые могут помочь вам подготовиться к любому собеседованию с Git и успешно его взломать.
Git играет важную роль в организации достижения DevOps. Эти вопросы на собеседовании по Git вместе с ответами помогут вам улучшить свои знания и преуспеть в работе и собеседовании.

Самые популярные вопросы на собеседовании GIT с ответами и примерами

1. Что такое Git?

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

2. Как лучше всего обрабатывать несколько версий одного и того же файла исходного кода?

Различные версии одного и того же исходного кода можно обрабатывать с помощью системы контроля версий.

3. Что такое система контроля версий?

 60+ вопросов к собеседованию Git, которые нужно подготовить в 2021 году

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

Она поддерживает все изменения и историю версий проекта и позволяет командам вызывать определенные версии на более поздних этапах.

Это гарантирует, что все члены группы работают над последней версией.

4. В чем преимущества системы контроля версий?

1. Это полезно при совместной работе в команде. Каждый член команды из одного и того же места
может внести свой вклад в один проект для достижения целей.
2. Помогает интегрировать код автоматизации в конвейер CI/CD.
3. Это помогает на раннем этапе тестирования конкретной функции, проверяя ветку функции

5. Что такое распределенная система контроля версий?

 Более 60 вопросов для собеседований Git, которые вам нужно подготовить в 2021 году

В распределенной системе контроля версий (DVCS) каждый разработчик получает копию (клон) центрального репозитория на локальном жестком диске системы. Разработчики фиксируют и обновляют свой локальный репозиторий без каких-либо проблем. Они могут обновлять свой локальный репозиторий новыми данными из центрального репозитория с помощью операции вытягивания и могут изменять центральный репозиторий из локального репозитория с помощью операции выталкивания.

6. В чем разница между Git & amp; GitHub?

Git GitHub
Это распределенная система контроля версий для отслеживания изменений в исходном коде во время разработки программного обеспечения. Предоставляет хостинг для разработки программного обеспечения и контроля версий с использованием Git.
Это программное обеспечение. Это услуга.
Он устанавливается локально в системе. Он размещается в облаке.
Это высококачественная система контроля версий. Это облачный хостинг.
Это инструмент командной строки. Он поставляется с простым в использовании интуитивно понятным пользовательским интерфейсом.
Впервые выпущен в 2005 году. Запущен в 2018 году.
Бесплатно и с открытым исходным кодом. Бесплатно и платите за использование.
Это сосредоточился на управлении версиями и совместном использовании кода. Он сосредоточился на централизованном размещении исходного кода.

< сильный> 7. Что такое репозиторий Git?

Репозиторий Git — это место, где все файлы Git хранятся либо в локальном репозитории, либо в удаленном/центральном репозитории. Это позволяет нам сохранять версии нашего кода, к которым мы можем получить доступ в любое время.

8. Какие задачи Git выполняет s, когда в Git создается фиксация?

Git создает 3 объекта — объект моментального снимка, объект фиксации, файловые объекты и сохраняет их. в локальной базе данных Git.

9. Как хеш SHA-1 используется в Git?

Хэш SHA-1 используется для однозначной идентификации сохраненных объектов в локальной базе данных Git.

10. Каковы состояния файла в Git?

В Git есть три различных состояния файла: измененный, поэтапный и зафиксированный

11. Какова цель команды git init?

Команда git init инициализирует новый проект Git и создает локальную папку .git в каталоге проекта.

12. Что происходит после создания фиксации?

При создании фиксации в репозиторий добавляются моментальные снимки поэтапных файлов и сохраняется состояние проекта.

13. Почему содержание сообщения о фиксации важно в Git?

Сообщение о фиксации помогает лучше понять изменения, внесенные в исходный код. Это определенная часть документации в любом проекте.

14. Необходимо ли отправлять коммиты на сервер для завершения рабочего процесса Git?

Нет, отправлять коммиты на сервер необязательно.

15. Какие задачи Git выполняет, когда после команды git fetch следует git merge?

Все вновь добавленные удаленные ветки будут извлечены из удаленного репо в локальное репо, а изменения из затем локальный репозиторий будет объединен с текущей активной ветвью.

16. Разрешает ли Git конфликты автоматически?

Нет, Git не разрешает конфликты автоматически.

17. Возможен ли git pull, если в файле в рабочем каталоге есть незафиксированные изменения?

Команда git pull обновляет локальное репозиторий удаленно. Если в рабочем каталоге есть открытые изменения, git pull завершится ошибкой. Так что всегда полезно фиксировать изменения перед тем, как выполнять новые.

18. Что показывает git reflog с config HEAD?

Регистрируется справочный журнал HEAD, что означает журналы всех изменений, внесенных в указатель ветки HEAD.

19. Что вы имеете в виду под веткой в ​​git?

Это подвижный указатель, указывающий на последнюю фиксацию из серии коммитов.

20. Для чего нужен указатель HEAD?

С помощью указателя HEAD Git узнает об активной ветви, над которой нужно работать.

21. Что вы понимаете под слиянием с перемоткой вперед в Git?

При ускоренном слиянии HEAD активной целевой ветки перемещается вперед к последней фиксации исходной ветки, которую еще предстоит объединить. Условием для этого является то, что исходная ветка не должна расходиться с активной ветвью.

22. Когда ветвь расходится?

Ветвь расходится от другой, когда в цепочку включается дополнительный и другой коммит.

23. Что вы знаете о термине Diamond Shape в git?

Дополнительная фиксация слияния создается всякий раз, когда две расходящиеся ветки объединяются в git, и в дальнейшем приводит к тому, что история фиксации целевой ветки выглядит как ромбовидная форма для этого конкретного слияния.

24. Чем ребазинг отличается от слияния?

Ребазинг не может рассматриваться как замена слияния. По сути, он обновляет ветку до состояния другой ветки.

25. Как переписать историю фиксации ветки?

Переписать историю фиксации ветки можно разными способами. Для этого можно использовать команды git commit — modify и git rebase.

26. Чей ярлык — опция -i?

-i — это ярлык для –interactive

27. Что может -i делать?

Параметр -i используется при перемещении для редактирования, сжатия, удаления, изменения порядка и объединения коммитов.

< h3> 28. Используется ли -i после перебазирования ветки?

Нет, -i используется при перебазировании.

29. В чем разница между git merge и git rebase?

Оба git merge и git rebase интегрировать изменения из одной ветки в другую.

Git Merge:

Предположим, у вас есть две ветки, такие как главная ветка, функциональная ветка.

git merge сохраняет историю фиксации ветки функции как есть.

Чтобы объединить главную ветку с веткой функции

git checkout feature
мастер слияния git

или одной строкой

мастер функции слияния git

Git Rebase:

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

Приведенная ниже команда используется для перебазирования функциональной ветви поверх главной ветви

Следующая команда можно использовать для переназначения ветки функции поверх основной ветки.

git checkout feature
git rebase -i master

Параметр «-i», используемый для интерактивной перестановки.

Мы можем просто использовать

git rebase master

30. О чем следует помнить при изменении истории ветки?

Никогда не следует переписывать историю фиксации общедоступной ветки.

31. Как разрешать конфликты?

Разрешаем для каждого файла. Либо примите удаленную версию, либо локальную версию с помощью команды git checkout. Инструмент, называемый инструментом слияния, также может использоваться для разрешения конфликтов.

32. Что такое «git remote» и «git clone»?

git remote: он используется для создания, просмотра и удаления подключений к другим репозиториям. Он используется для обозначения удаленного репозитория или центрального репозитория.

git clone: ​​ Он используется для создания копии или клона целевого репозитория. Он используется для нацеливания на другой уже существующий репозиторий.

33. Что вы понимаете под отстраненной ГОЛОВКОЙ?

Отсоединенный HEAD — это состояние, когда указатель HEAD указывает на конкретную фиксацию, а не на ветку.

34. Какова роль Git в выборе вишен?

Функция выбора в Git позволяет вам выбрать конкретную фиксацию и применить ее из одной ветки к другой. В этом процессе Git создает новую фиксацию с новым хешем и тем же содержимым и применяется к целевой ветви.

35. Можно ли выбрать несколько коммитов одновременно с помощью выбора вишни?

Да, можно выбрать несколько коммитов одновременно.

36. Что делает Hard Resetting?

Он используется для сброса HEAD в локальном репозитории до определенного коммита, а также в рабочем каталоге и промежуточной области.

< сильный> 37. Какой вариант сброса используется по умолчанию, когда ничего не предусмотрено?

–mixed — вариант сброса по умолчанию

38. Что делают команды «git reset –mixed» и «git merge –abort»?

«git reset –mixed» используется для отмены изменений, внесенных в рабочий каталог и промежуточную область.

'git merge –abort' используется для остановки процесса слияния и возврата к состоянию до слияния процесс.

39. Есть ли в Git какая-либо скрытая функция, с помощью которой конфликты разрешаются автоматически?

Да, команда git rerere используется для автоматического разрешения конфликтов.

40. Почему в Git используется возврат?

Как следует из названия, откат используется для отмены конкретной фиксации и применения новой фиксации с исправленными изменениями.

41. Как вы отмените команду фиксации, которая уже была отправлена ​​и опубликована?

Мы можем выполнить два процесса, чтобы отменить фиксацию.

1. Создав новую фиксацию для отмены всех изменений, внесенных в неверную фиксацию, и используйте следующую команду

git revert & lt; commit id & gt;

2. Удалите или измените плохой файл в новой фиксации и отправьте его в удаленный репозиторий.

git commit –m «сообщение фиксации»

42. В чем разница между git diff и git status?

Git diff:

Git diff — это мульти- используйте команду Git, и она используется для отображения изменений между коммитами, фиксацией и рабочим деревом и т. д.

Команда git diff часто используется вместе с git status и git log для анализа текущего состояния репозиторий Git.

Статус Git:

Статус Git показывает состояние рабочего каталога и промежуточной области.

'git diff' похож на 'git status', но с той лишь разницей, что он показывает разницу между различными коммитами, а также между рабочим каталогом и индексом.

'git diff' аналогичен 'git status ', единственное отличие состоит в том, что он показывает различия между различными коммитами, а также между рабочим каталогом и индексом.

43. Назовите некоторые службы репозитория хостинга Git

  • GitHub
  • GitLab
  • GitEnterprise
  • SourceForge
  • < li>Microsoft VSTS

  • BitBucket
  • LaunchPad
  • Perforce
  • Beanstalk
  • Assembla
  • Pikacode
  • Beanstalk
  • FogBugz
  • Surround SCM
  • Buddy

44. Назовите некоторые операции Git, которые вы использовали?

Я использовал следующие операции Git:

  • Initialize
  • Add
  • Зафиксировать
  • Нажать
  • Потянуть
  • Разветвление
  • Слияние
  • Перебазирование

45. В чем разница между git checkout [имя ветки] и git checkout -b [имя ветки]?

Команда git checkout [имя ветки] переключает с одной ветки на другую

Команда git checkout –b [имя ветки] создает новую ветку и также переключается на нее.

46. Как удалить файл из Git, не удаляя его из локальной файловой системы?

Используя параметр «кэширование»

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

git rm -rf -cached $ FILES

47. Какой язык используется в Git?

Git написан на языке программирования C. Это ускоряет Git за счет сокращения накладных расходов времени выполнения, связанных с языками высокого уровня.

48. Как вы исправите нарушенную фиксацию?

Мы используем команду «git commit –amend», чтобы исправить нарушенную фиксацию или изменить последнюю фиксацию.

Эта команда объединяет поэтапные изменения с предыдущей фиксацией в качестве альтернативы созданию совершенно новой фиксации. Он заменяет недавнюю фиксацию измененной фиксацией.

49. Назовите некоторые команды Git и их функции.

Git config: Чтобы настроить имя пользователя и адрес электронной почты
Git add: Чтобы добавить один или несколько файлов в область подготовки
Git diff: для просмотра изменений, внесенных в файл
Git init: чтобы инициализировать пустой Репозиторий Git
Git commit: Чтобы зафиксировать изменения в заголовке, но не в удаленном репозитории.

50. Как инициализировать репозиторий Git?

Чтобы создать новое репо, мы должны использовать следующую команду

git init

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

Во-первых, нам нужно создать каталог для проекта, чтобы Каталог .git будет создан внутри каталога нашего проекта, а каталог проекта превратится в репозиторий Git.

51. Что такое каталог .git?

. Папка .git содержит всю информацию, необходимую для вашего проекта, и всю информацию о коммитах, хуках, ссылках, базах данных объектов, адресах удаленных репозиториев. и т. д. Он ведет журнал для отслеживания всех изменений, внесенных в файлы в репозитории.

52. Что такое сообщение фиксации в Git?

Команда фиксации в Git используется для записи прогресса в локальном репозитории. Он выполняется после того, как файлы, которые нужно зафиксировать, были добавлены в область подготовки с помощью команды git add, например, «git commit –m»

53. Что такое команда git push.

 60+ вопросов к собеседованию Git, которые нужно подготовить в 2021 году

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

54. Что такое команда git pull.

 Более 60 вопросов для собеседований Git, которые вам нужно подготовить в 2021 году

Команда Git pull представляет собой комбинацию «git fetch», за которой следует «git merge». Он используется для получения и объединения изменений из удаленного репозитория в локальный.

55. Что такое Git Stash?

GIT stash фиксирует текущее состояние рабочего каталога, индексирует его и сохраняет в стеке на более позднем этапе. Он возвращает чистый рабочий каталог.

Предположим, вы работаете над проектом, и все становится беспорядочно, и вы хотите на какое-то время переключить ветки, чтобы поработать над чем-то другим, и не хотите фиксировать или отменять свои код. Здесь вам поможет Stash. Вы можете просто использовать команду git stash в git.

56. Что такое Git Stash drop?

Git Stash drop в git используется для удаления определенного элемента тайника из списка спрятанных элементов.
Вы можете удалить определенный тайник, выполнив следующую команду.

git stash drop & lt; stash_id & gt;

Если вы хотите удалить все тайники за раз из репозитория, вы можете запустить следующую команду

git stash clear

Например:

Если вы хотите увидеть полный список спрятанных элементов, используйте следующую команду

git stash list

. Она отобразит Список сохраненных элементов выглядит следующим образом

stash @ {0}: WIP на главном сервере: a52e112 добавил индексный файл
stash @ {1}: WIP на главном сервере: b473693 Отменить «добавленный размер_файла»
stash @ {2}: WIP на главном сервере: 44e45v2 добавлен номер в журнал

Чтобы удалить элемент с именем stash @ {0} затем мы используем следующую команду

git stash drop stash @ {0}

57. О чем следует помнить при написании сообщения о фиксации?

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

58. Какова основная цель потока GitHub?

Главный принцип потока GitHub заключается в том, что ветка с одним и тем же именем регулярно отправляется из локального в удаленный репозиторий, чтобы получить быстрый ответ от сервера непрерывной интеграции.

59. Какова основная цель Git Repository Manager?

Git Repository Manager используется при совместной разработке программного обеспечения.

60. Как восстановить ветку, которая была удалена вами и уже внесла изменения в центральный репозиторий git. Предположим, что нет других репозиториев git и ни у кого из членов вашей команды не было локальной копии.

Сначала я проверю reflog для последний коммит в эту ветку, а затем проверьте его как новую ветку.

61. Что вы знаете о автономной службе Git?

Самостоятельная служба Git — это не что иное, как диспетчер репозитория Git, размещенный на собственном сервере.

62. Какая польза от git instaweb?

Instaweb — это скрипт, используемый для установки временного экземпляра GitWeb на веб-сервере для просмотра локального рабочего репозитория Git в веб-браузере.

git instaweb позволяет просматривать ваши рабочие Репозиторий Git в gitweb.

63. Что такое SubGit?

SubGit — это программный инструмент, используемый для перехода с SVN на Git. Чтобы перенести репозиторий из SVN в Git, необходимо установить SubBit на свой сервер Git.

64. Какие есть альтернативы SubGit?

Вот некоторые из альтернатив SubGit:

  • SmartGit
  • GitKraken
  • < li> TortoiseGit

  • git-cola
  • Tower
  • gitg

В заключение:

На этом я собираюсь закончить этот пост. Если у вас есть другие вопросы, оставьте комментарий ниже, и мы ответим на них и включим в этот пост. Не упустите возможность ознакомиться с этим списком вопросов на собеседовании Git перед тем, как пойти на собеседование. Кроме того, я настоятельно рекомендую вам просмотреть этот список вопросов на собеседовании DevOps.

git