GIT 面接の質問と回答トップ 45 (2024)

ここでは、新人だけでなく経験豊富な候補者も夢の仕事に就くための Git 面接の質問と回答を紹介します。

無料 PDF ダウンロード: Git 面接の質問


1) GIT とは何ですか?

GIT は、小規模および大規模なプロジェクトを迅速かつ効率的に処理することに重点を置いた分散型バージョン管理システムおよびソース コード管理 (SCM) システムです。


2) GIT のリポジトリとは何ですか?

リポジトリには .git という名前のディレクトリが含まれており、ここに git がリポジトリのすべてのメタデータを保持します。 .git ディレクトリの内容は git にとってプライベートです。


3) コミットメッセージを書き込むために使用できるコマンドは何ですか?

コミットメッセージを書き込むコマンドは「git commit –a」です。 コマンドラインの -a は、変更されたすべての追跡ファイルの新しいコンテンツをコミットするように git に指示します。 「git add」を使用できます新しいファイルを初めてコミットする必要がある場合は、 git commit –a の前に「」を実行します。


4) GIT と SVN の違いは何ですか?

GIT と SVN の違いは次のとおりです。

a) Git は、非常に大きなファイルを処理したり、頻繁に変更されるバイナリ ファイルを処理する場合にはあまり好まれませんが、SVN は同じリポジトリに保存されている複数のプロジェクトを処理できます。

b) GIT は、複数のブランチまたはタグにわたる「コミット」をサポートしません。 Subversion では、リポジトリ レイアウト内の任意の場所にフォルダーを作成できます。

c) Git は変更できませんが、Subversion ではコミッタがタグをブランチとして扱い、タグ ルートの下に複数のリビジョンを作成できます。


5) GIT を使用する利点は何ですか?

a) データの冗長性とレプリケーション

b) 高可用性

c) リポジトリごとに XNUMX つの .git ディレクトリのみ

d) 優れたディスク使用率とネットワーク パフォーマンス

e) コラボレーションしやすい

f) あらゆる種類のプロジェクトで GIT を使用できます


6) GIT ではどのような言語が使用されますか?

GIT は高速であり、「C」言語は高級言語に関連するランタイムのオーバーヘッドを削減することでこれを可能にします。

Gitインタビューの質問
Gitインタビューの質問

7) GIT の「GIT​​ PUSH」の機能は何ですか?

「GIT PUSH」は、リモート参照と関連オブジェクトを更新します。


8) なぜ GIT が Subversion よりも優れているのでしょうか?

GIT はオープンソースのバージョン管理システムです。 これにより、プロジェクトの「バージョン」を実行できるようになり、時間の経過とともにコードに加えられた変更が表示されます。また、必要に応じてバックトラックを維持し、それらの変更を元に戻すこともできます。 複数の開発者が変更をチェックアウトしてアップロードすることができ、各変更を特定の開発者に帰属させることができます。

Git 面接でよくある質問と回答
Git 面接でよくある質問と回答

9) GIT の「ステージング領域」または「インデックス」とは何ですか?

コミットを完了する前に、「ステージング領域」または「インデックス」と呼ばれる中間領域でフォーマットして確認することができます。


10) GIT スタッシュとは何ですか?

GIT stash は、作業ディレクトリとインデックスの現在の状態を取得し、後で使用するためにスタックに格納し、クリーンな作業ディレクトリを返します。 したがって、何かの途中で別のジョブにジャンプする必要があり、同時に現在の編集内容を失いたくない場合は、GIT stash を使用できます。


11) GIT スタッシュ ドロップとは何ですか?

隠しアイテムの使用が完了した場合、またはリストからアイテムを削除したい場合は、 git 'stash drop' コマンドを実行します。 デフォルトでは、最後に追加された隠しアイテムが削除されます。また、引数として含める場合は、特定のアイテムを削除することもできます。


12) GIT では、ブランチがすでにマスターにマージされているかどうかをどのようにして知ることができますか?

Git ブランチ - merged は、現在のブランチにマージされたブランチをリストします。

Git ブランチ—-マージされていないブランチをリストします。


13) git clone の機能は何ですか?

git clone コマンドは、既存の Git リポジトリのコピーを作成します。 中央リポジトリのコピーを取得するために、プログラマが使用する最も一般的な方法は「クローン作成」です。


14) 「git config」の機能は何ですか?

「git config」コマンドは、Git インストールの構成オプションを設定する便利な方法です。 リポジトリの動作、ユーザー情報、設定などは、このコマンドを通じて定義できます。


15) コミットオブジェクトには何が含まれますか?

a) 特定の時点でのプロジェクトの状態を表す一連のファイル

b) 親コミットオブジェクトへの参照

c) SHAI 名。コミット オブジェクトを一意に識別する 40 文字の文字列。


16) Git でリポジトリを作成するにはどうすればよいですか?

Git でリポジトリを作成するには、プロジェクトのディレクトリが存在しない場合は作成し、コマンド「git init」を実行します。 このコマンドを実行すると、プロジェクト ディレクトリに .git ディレクトリが作成されますが、ディレクトリが空である必要はありません。


17) git の「ヘッド」とは何ですか? リポジトリにはヘッドをいくつ作成できますか?

「ヘッド」は単にコミット オブジェクトへの参照です。 すべてのリポジトリには、「マスター」と呼ばれるデフォルトのヘッドがあります。 リポジトリには任意の数のヘッドを含めることができます。


18) GIT での分岐の目的は何ですか?

GIT でのブランチの目的は、独自のブランチを作成し、それらのブランチ間をジャンプできるようにすることです。 最近の作業をそのまま維持したまま、前の作業に戻ることができます。


19) GIT における一般的な分岐パターンは何ですか?

GIT でブランチを作成する一般的な方法は、ブランチを「メイン」として維持することです。

ブランチを作成し、別のブランチを作成して新しい機能を実装します。 このパターンは、複数の開発者が XNUMX つのプロジェクトに取り組んでいる場合に特に便利です。


20) メインブランチに新しい機能を導入するにはどうすればよいですか?

メイン ブランチに新しい機能を導入するには、「git merge」または「git pull コマンド」コマンドを使用できます。


21) git の「競合」とは何ですか?

「競合」は、マージする必要があるコミットの一箇所に変更があり、現在のコミットにも同じ箇所に変更がある場合に発生します。 Git は、どの変更を優先する必要があるかを予測できません。


22) git 内の競合はどのように解決できますか?

git の競合を解決するには、ファイルを編集して競合する変更を修正し、その後「git add」を実行して解決されたファイルを追加し、修復されたマージをコミットして「git commit」を実行します。 Git はマージの途中であることを記憶しているので、コミットの親を正しく設定します。


23) ブランチを削除するにはどのようなコマンドを使用しますか?

開発ブランチがメイン ブランチにマージされたら、次の必要はありません。

開発ブランチ。 ブランチを削除するには、「git Branch –d [head]」コマンドを使用します。


24) git でマージする別のオプションは何ですか?

「リベース」は、git でのマージの代替手段です。


25) Git の「リベース」の構文は何ですか?

リベースに使用される構文は「git rebase [new-commit]


26) 「git リモート」と「git clone」の違いは何ですか?

「git Remote add」は、特定の URL の名前を指定するエントリを git config に作成するだけです。 一方、「git clone」は、URI にある既存の git リポジトリをコピーして、新しい git リポジトリを作成します。


27) GIT バージョン管理とは何ですか?

GIT バージョン管理を利用すると、ファイルのコレクションの履歴を追跡でき、ファイルのコレクションを別のバージョンに戻す機能が含まれます。 各バージョンは、特定の時点でのファイル システムのスナップショットをキャプチャします。 ファイルのコレクションとその完全な履歴はリポジトリに保存されます。


28) LINUX に最適なグラフィカル GIT クライアントについていくつか挙げてください。

LINUX に最適な GIT クライアントには、次のようなものがあります。

a) Git Cola

b) Git-g

c) スマート git

d) くすくすと笑う

e) Git GUI

f) qGit


29) Subgitとは何ですか? Subgit を使用する理由

「Subgit」は、SVN から Git へのスムーズでストレスのない移行のためのツールです。 Subgit は、SVN から Git への全社的な移行のためのソリューションです。

a) git-svn よりもはるかに優れています

b) すでに設置されているインフラストラクチャを変更する必要はありません

c) すべての git およびすべてのサブバージョン機能の使用を許可します。

d) ストレスのない真の移行体験を提供します。


30) git の 'git diff ' の機能は何ですか?

「git diff」 コミット間の変更、コミットと作業ツリーなどを示します。


31) 「git status」は何に使用されますか?

「Git Status」には作業ディレクトリとインデックスの違いが表示されるため、Git をより包括的に理解するのに役立ちます。


32) 「git diff」と「git status」の違いは何ですか?

「git diff」は「git status」に似ています、ただし、さまざまなコミット間の違い、および作業ディレクトリとインデックス間の違いも表示されます。


33) git の「git checkout」の機能は何ですか?

A 「gitチェックアウト」 コマンドは、ブランチ全体にマージせずに、作業ツリー内のディレクトリまたは特定のファイルを別のブランチのファイルで更新するために使用されます。


34) 「git rm」の機能は何ですか?

ファイルをステージング領域とディスクから削除するには 「ギットrm」 使用されている。


35) 「git stash apply」の機能は何ですか?

退職した職場で引き続き働きたいときは、 「git stash 適用」 コマンドは、保存された変更を作業ディレクトリに戻すために使用されます。


36) 「git log」の用途は何ですか?

プロジェクト履歴内の特定のコミットを作成者、日付、コンテンツ、または履歴ごとに検索するには、「git log」が使用されます。


37) 「git add」は何に使用されますか?

「git add」は、既存のディレクトリ内のファイルの変更をインデックスに追加します。


38) 「gitリセット」の機能は何ですか?

の機能 「Git リセット」 インデックスと作業ディレクトリを最後のコミットの状態にリセットすることです。


39) git Is-tree とは何ですか?

「git Is ツリー」 各項目のモードと名前、および BLOB またはツリーの SHA-1 値を含むツリー オブジェクトを表します。


40) git instaweb はどのように使用されますか?

「Gitインスタウェブ」 自動的に Web ブラウザにアクセスし、ローカル リポジトリへのインターフェイスを備えた Web サーバーを実行します。


41) git の「フック」は何で構成されていますか?

このディレクトリは、対応する Git コマンドの実行後にアクティブ化されるシェル スクリプトで構成されます。 たとえば、git はコミットを実行した後にコミット後のスクリプトを実行しようとします。


42) コミットメッセージとは何ですか?

コミットメッセージは、変更をコミットするときに表示される git の機能です。 Git には、コミットで行われた変更を入力できるテキスト エディターが用意されています。


43) 壊れたコミットを修正するにはどうすればよいですか?

壊れたコミットを修正するには、コマンド「git commit - 修正”。 このコマンドを実行すると、エディターで壊れたコミット メッセージを修正できます。


44) 既存のコミットを修正するのではなく、追加のコミットを作成することが推奨されるのはなぜですか?

理由はいくつかあります

a) 修正操作は、以前にコミットで保存された状態を破棄します。 コミットメッセージが変更されるだけであれば問題ありません。 しかし、内容が修正される場合、重要なものが削除される可能性が高くなります。

b) 「git commit-amend」を悪用すると、小さなコミットが増大し、無関係な変更が取得される可能性があります。


45) GIT の「ベア リポジトリ」とは何ですか?

特に複数のコンピュータからプロジェクトに取り組んでいる場合、分散開発および開発者チームと調整するために、「ベア リポジトリ」が使用されます。 ベア リポジトリは、コードのバージョン履歴で構成されます。


46) Git リポジトリ ホスティング サービスをいくつか挙げてください

  • ピカコード
  • Visual Studio オンライン
  • GitHubの
  • Gitエンタープライズ
  • SourceForge.net
シェアする

13のコメント

  1. アバター PHPプログラマー 言います:

    とても助かりました。 よろしくお願いします。

  2. アバター スレシュ 言います:

    よくある質問をまとめていただきありがとうございます

  3. アバター vinit 言います:

    本当にありがとう。

  4. アバター ナジール・アーメッド 言います:

    トラブルシューティング、プラグイン、Microsoft ツールのサポート、および解決手順の一般的なエラーについて、さらに詳しい Q&A が必要です。

  5. アバター アシュラフ 言います:

    コンセプトについてはtq..

  6. アバター くま 言います:

    すばらしい、質問と回答、面接の準備に役立ちます

  7. アバター ナレシュ・ベンデ 言います:

    こんにちはチーム、

    私たちは、コードをさまざまな個別のブランチにコミットする約 10 人の開発者で構成される Python プロジェクトに取り組んでいます。 支店の数はほぼ 80 ~ 85 です。 実稼働環境でのデプロイ中に、その特定の日に GitHub 上で行われた最近のコミットを分離し、マスター ブランチにプルする必要があります。 この問題をどのように解決すれば、開発者が開発ブランチでコードをコミットし、正常になった後にステージングおよび運用環境に後でマージできるようになります。

    1. アバター ハリッシュ 言います:

      なぜ異なるブランチを使用しているのでしょうか? 異なるモジュールまたはファイルで作業していることを考慮すると、それらがすべて同じブランチで作業する方が良いのではないでしょうか。

  8. アバター アマール・クンバル 言います:

    ありがとう。 これは役に立ちます! 続けて ! ありがとう !!

  9. アバター ハローワールド 言います:

    こんにちは。 Git の面接の質問の範囲では、タグ付けのトピックを理解することも重要だと思います

  10. アバター Santhosh 言います:

    ありがとうございました。

  11. アバター ルトフォー・ラハマン 言います:

    すべてをカバーします。 よかった、ありがとう

コメントを残す

あなたのメールアドレスは公開されません。 必須フィールドは、マークされています *