Le 45 migliori domande e risposte all'intervista GIT (2024)

Ecco le domande e le risposte al colloquio su Git per le matricole e i candidati esperti per ottenere il lavoro dei loro sogni.

Download gratuito del PDF: domande dell'intervista su Git


1) Cos'è GIT?

GIT è un sistema di controllo della versione distribuito e un sistema di gestione del codice sorgente (SCM) con l'accento sulla gestione di progetti piccoli e grandi con velocità ed efficienza.


2) Cos'è un repository in GIT?

Un repository contiene una directory denominata .git, dove git conserva tutti i suoi metadati per il repository. Il contenuto della directory .git è privato per git.


3) Qual è il comando che puoi usare per scrivere un messaggio di commit?

Il comando utilizzato per scrivere un messaggio di commit è "git commit –a". Il –a sulla riga di comando indica a git di eseguire il commit del nuovo contenuto di tutti i file tracciati che sono stati modificati. Puoi usare “git add " prima di git commit –a se è necessario eseguire il commit di nuovi file per la prima volta.


4) Qual è la differenza tra GIT e SVN?

La differenza tra GIT e SVN è

a) Git è meno preferito per la gestione di file estremamente grandi o file binari che cambiano frequentemente mentre SVN può gestire più progetti archiviati nello stesso repository.

b) GIT non supporta i "commit" su più rami o tag. Subversion consente la creazione di cartelle in qualsiasi posizione nel layout del repository.

c) I Git sono immutabili, mentre Subversion consente ai committer di trattare un tag come un ramo e di creare più revisioni sotto una tag root.


5) Quali sono i vantaggi dell'utilizzo di GIT?

a) Ridondanza e replica dei dati

b) Alta disponibilità

c) Solo una directory.git per repository

d) Utilizzo del disco e prestazioni di rete superiori

e) Collaborazione amichevole

f) Qualsiasi tipo di progetto può utilizzare GIT


6) Quale linguaggio viene utilizzato in GIT?

GIT è veloce e il linguaggio "C" lo rende possibile riducendo il sovraccarico dei tempi di esecuzione associati ai linguaggi superiori.

Domande di intervista su Git
Domande di intervista su Git

7) Qual è la funzione di 'GIT PUSH' in GIT?

'GIT PUSH' aggiorna i riferimenti remoti insieme agli oggetti associati.


8) Perché GIT è migliore di Subversion?

GIT è un sistema di controllo della versione open source; ti consentirà di eseguire "versioni" di un progetto, che mostrano le modifiche apportate al codice nel tempo, inoltre ti consente di tornare indietro se necessario e annullare tali modifiche. Più sviluppatori possono effettuare il checkout e caricare modifiche e ciascuna modifica può quindi essere attribuita a uno sviluppatore specifico.

Domande e risposte sulle migliori interviste a Git
Domande e risposte sulle migliori interviste a Git

9) Cos'è l'“Area di staging” o l'“Indice” in GIT?

Prima di completare i commit, può essere formattato e rivisto in un'area intermedia nota come "Area di staging" o "Indice".


10) Cos'è la scorta GIT?

GIT stash prende lo stato corrente della directory di lavoro e dell'indice e lo inserisce nello stack per dopo e ti restituisce una directory di lavoro pulita. Quindi, nel caso in cui sei nel mezzo di qualcosa e hai bisogno di passare all'altro lavoro e allo stesso tempo non vuoi perdere le modifiche attuali, puoi utilizzare GIT stash.


11) Cos'è lo stash drop GIT?

Quando hai finito con l'elemento nascosto o desideri rimuoverlo dall'elenco, esegui il comando git 'stash drop'. Rimuoverà l'ultimo elemento stash aggiunto per impostazione predefinita e potrà anche rimuovere un elemento specifico se lo includi come argomento.


12) Come saprai in GIT se un ramo è già stato unito al master?

Git branch—merged elenca i rami che sono stati uniti nel ramo corrente

Git branch—-no merged elenca i rami che non sono stati uniti


13) Qual è la funzione di git clone?

Il comando git clone crea una copia di un repository Git esistente. Per ottenere la copia di un repository centrale, la "clonazione" è il modo più comune utilizzato dai programmatori.


14) Qual è la funzione di 'git config'?

Il comando 'git config' è un modo conveniente per impostare le opzioni di configurazione per la tua installazione Git. Tramite questo comando è possibile definire il comportamento di un repository, informazioni sull'utente, preferenze, ecc.


15) Cosa contiene l'oggetto commit?

a) Un insieme di file, che rappresentano lo stato di un progetto in un dato momento

b) Riferimento agli oggetti commit principali

c) Un nome SHAI, una stringa di 40 caratteri che identifica in modo univoco l'oggetto commit.


16) Come si può creare un repository in Git?

In Git, per creare un repository, crea una directory per il progetto se non esiste, quindi esegui il comando "git init". Eseguendo questo comando verrà creata la directory .git nella directory del progetto, non è necessario che la directory sia vuota.


17) Cos'è "head" in git e quante teste possono essere create in un repository?

Una "testa" è semplicemente un riferimento a un oggetto commit. In ogni repository è presente un'intestazione predefinita denominata "Master". Un repository può contenere un numero qualsiasi di teste.


18) Qual è lo scopo della ramificazione in GIT?

Lo scopo della ramificazione in GIT è che puoi creare il tuo ramo e saltare tra questi rami. Ti consentirà di tornare al tuo lavoro precedente mantenendo intatto il tuo lavoro recente.


19) Qual è il modello di ramificazione comune in GIT?

Il modo comune di creare un ramo in GIT è mantenerne uno come "Principale"

branch e creare un altro ramo per implementare nuove funzionalità. Questo modello è particolarmente utile quando più sviluppatori lavorano su un singolo progetto.


20) Come si può portare una nuova funzionalità nel ramo principale?

Per portare una nuova funzionalità nel ramo principale, puoi utilizzare il comando “git merge” o “git pull command”.


21) Cos'è un 'conflitto' in Git?

Un 'conflitto' sorge quando il commit che deve essere unito presenta qualche modifica in un posto, e anche il commit corrente presenta una modifica nello stesso punto. Git non sarà in grado di prevedere quale cambiamento dovrebbe avere la precedenza.


22) Come può essere risolto il conflitto in Git?

Per risolvere il conflitto in git, modifica i file per correggere le modifiche in conflitto e quindi aggiungi i file risolti eseguendo "git add", quindi per confermare l'unione riparata, esegui "git commit". Git ricorda che sei nel mezzo di una fusione, quindi imposta correttamente i genitori del commit.


23) Per eliminare un ramo qual è il comando che si usa?

Una volta che il ramo di sviluppo è stato unito al ramo principale, non è più necessario

ramo di sviluppo. Per eliminare un ramo utilizzare il comando “git branch –d [head]”.


24) Qual è un'altra opzione per unire in git?

Il “Rebasing” è un’alternativa alla fusione in Git.


25) Qual è la sintassi di “Rebasing” in Git?

La sintassi utilizzata per rebase è “git rebase [new-commit] "


26) Qual è la differenza tra 'git remote' e 'git clone'?

'git remote add' crea semplicemente una voce nella tua configurazione git che specifica un nome per un particolare URL. Mentre, 'git clone' crea un nuovo repository git copiandone uno esistente situato nell'URI.


27) Cos'è il controllo della versione GIT?

Con l'aiuto del controllo della versione GIT, puoi tenere traccia della cronologia di una raccolta di file e includere la funzionalità per ripristinare la raccolta di file a un'altra versione. Ogni versione cattura un'istantanea del file system in un determinato momento. Una raccolta di file e la loro cronologia completa sono archiviati in un repository.


28) Citare alcuni dei migliori client GIT grafici per LINUX?

Alcuni dei migliori client GIT per LINUX sono

a) Git Cola

b) Git-g

c) Un idiota intelligente

d) Ridacchiare

e) GUI di Git

f) qGit


29) Cos'è Subgit? Perché utilizzare Subgit?

"Subgit" è uno strumento per una migrazione da SVN a Git fluida e senza stress. Subgit è una soluzione per la migrazione a livello aziendale da SVN a Git che è:

a) È molto meglio di git-svn

b) Nessun obbligo di modificare l'infrastruttura già posizionata

c) Consente di utilizzare tutte le funzionalità di git e tutte le sottoversioni

d) Fornisce un'autentica esperienza di migrazione senza stress.


30) Qual è la funzione di 'git diff ' in git?

'git diff' mostra le modifiche tra commit, commit e albero di lavoro, ecc.


31) A cosa serve 'git status'?

Poiché "Git Status" mostra la differenza tra la directory di lavoro e l'indice, è utile per comprendere Git in modo più completo.


32) Qual è la differenza tra 'git diff' e 'git status'?

'git diff' è simile a 'git status', ma mostra le differenze tra i vari commit e anche tra la directory di lavoro e l'index.


33) Qual è la funzione di 'git checkout' in git?

A 'git checkout' Il comando viene utilizzato per aggiornare directory o file specifici nel tuo albero di lavoro con quelli di un altro ramo senza unirli nell'intero ramo.


34) Qual è la funzione di 'git rm'?

Per rimuovere il file dall'area di staging e anche dal disco 'git rm' viene utilizzato.


35) Qual è la funzione di 'git stash apply'?

Quando vuoi continuare a lavorare da dove hai lasciato il tuo lavoro, 'git stash apply' Il comando viene utilizzato per riportare le modifiche salvate nella directory di lavoro.


36) A cosa serve 'git log'?

Per trovare commit specifici nella cronologia del progetto, per autore, data, contenuto o cronologia viene utilizzato il "log git".


37) A cosa serve 'git add'?

'git add' aggiunge le modifiche ai file nella directory esistente al tuo indice.


38) Qual è la funzione di 'git reset'?

La funzione di "Ripristino Git" è reimpostare il tuo indice e la directory di lavoro allo stato del tuo ultimo commit.


39) Cos'è git Is-tree?

'git Is-tree' rappresenta un oggetto albero che include la modalità e il nome di ciascun elemento e il valore SHA-1 del BLOB o dell'albero.


40) Come viene utilizzato git instaweb?

"Git Instaweb" dirige automaticamente un browser web ed esegue il server web con un'interfaccia nel tuo repository locale.


41) In cosa consistono gli "hook" in git?

Questa directory è composta da script Shell che vengono attivati ​​dopo aver eseguito i comandi Git corrispondenti. Ad esempio, git proverà a eseguire lo script post-commit dopo aver eseguito un commit.


42) Spiegare cos'è il messaggio di commit?

Il messaggio di commit è una funzionalità di git che appare quando effettui il commit di una modifica. Git ti fornisce un editor di testo in cui puoi inserire le modifiche apportate nei commit.


43) Come puoi correggere un commit non funzionante?

Per correggere eventuali commit interrotti, utilizzerai il comando “git commit: modifica”. Eseguendo questo comando, puoi correggere il messaggio di commit non valido nell'editor.


44) Perché è consigliabile creare un commit aggiuntivo anziché modificare un commit esistente?

Ci sono un paio di ragioni

a) L'operazione di modifica distruggerà lo stato precedentemente salvato in un commit. Se viene modificato solo il messaggio di commit, non è un problema. Ma se i contenuti vengono modificati, le possibilità di eliminare qualcosa di importante rimangono maggiori.

b) L'abuso di "git commit-amend" può causare la crescita di un piccolo commit e l'acquisizione di modifiche non correlate.


45) Cos'è il "repository nudo" in GIT?

Per coordinarsi con lo sviluppo distribuito e il team di sviluppatori, soprattutto quando si lavora su un progetto da più computer, viene utilizzato il "Bare Repository". Un repository nudo comprende una cronologia delle versioni del tuo codice.


46) Nomina alcuni servizi di hosting di repository Git

  • Pikacode
  • Visual Studio online
  • GitHub
  • GitEnterprise
  • SourceForge.net
Condividi

Commenti

  1. Grazie per aver consolidato le domande frequenti

  2. Avatar Nazir Ahmed dice:

    sono necessarie domande e risposte più approfondite sulla risoluzione dei problemi, sui plug-in, sul supporto con gli strumenti Microsoft e anche sugli errori comuni nei passaggi della soluzione.

  3. Ottimo, domande e risposte ed è utile per la preparazione delle interviste

  4. Avatar Naresh Bende dice:

    Ciao Team,

    Stiamo lavorando al progetto Python che consiste di circa 10 sviluppatori che trasferiscono il loro codice su diversi rami individuali. Il numero dei rami è quasi 80-85. Durante la distribuzione in produzione dobbiamo separare i recenti impegni effettuati su GitHub in quel particolare giorno e trasferirli nel nostro ramo principale. Come è possibile risolvere questo problema in modo che lo sviluppatore possa impegnare il proprio codice sul ramo Dev che può essere successivamente unito a Staging e Produzione dopo la sanità mentale.??

    1. Perché usano rami diversi? Non sarebbe meglio se lavorassero tutti sullo stesso ramo considerando che lavorano su moduli o file diversi.

  5. Avatar Amar Kumbhar dice:

    Grazie. Questo è utile! Continuare ! Grazie !!

  6. Avatar Ciao mondo dice:

    Ciao. Penso che la comprensione dell'argomento Tagging sia importante anche nell'ambito delle domande dell'intervista a Git

Lascia un Commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *