Wat is de .git-map?

Wat is de map met de naam .git?

Het is gemaakt in een repository. Wat zit erin en waarom is het gemaakt?


Antwoord 1, autoriteit 100%

De .gitmap bevat alle informatie die nodig is voor je project in versiebeheer en alle informatie over commits, remote repository adres, etc. Ze zijn allemaal aanwezig in deze map. Het bevat ook een log waarin je commit-geschiedenis wordt opgeslagen, zodat je terug kunt gaan naar de geschiedenis.

Voor meer informatie kun je de officiële website van gitbekijken.


Antwoord 2, autoriteit 89%

.git wordt geïnitialiseerd door git init.

.git bevat alle informatie die nodig is voor versiebeheer. Als je je repo wilt klonen, is kopiëren van .git voldoende.

4 submappen:

  • hooks/ : voorbeeldscripts
  • info/ : excludebestand voor genegeerde patronen
  • objecten/ : alle “objecten”
  • refs/ : verwijzingen om objecten vast te leggen

4 bestanden:

  • HEAD : huidige tak
  • config: configuratie-opties
  • beschrijving
  • index: verzamelgebied

Hier omvat “object”:

  • blobs(bestanden)
  • trees(directories)
  • commits(verwijzing naar een boom, parent commit, etc)

Antwoord 3, autoriteit 22%

Deze uitleg zou beginners moeten helpen de map .gitte begrijpen.

De map .gitlijkt een beetje op een magische hoed waarin je je huidige goochelshow stopt.

Als je een nieuwe git-repository aanmaakt (git init), wordt alles wat je organiseert in een showformaat in deze magische hoed geplaatst en kan het worden ‘uitgetrokken’ wanneer en waar je maar wilt.

Nadat je alles eruit hebt gehaald, kun je alles weggooien als je klaar bent met de show (dwz al je bestanden behalve de map .git), en je kunt altijd precies dezelfde show terughalen op een latere datum. (Omdat elke nieuwe show gewoon een kloon is van wat er in de hoed zit).

Als je iemand ALLEEN de map .gitstuurt, kunnen ze je projectbestanden altijd in dezelfde structuur (toon formaat) ophalen als waarin je ze hebt geplaatst.

git addvertelt de map .gitwat eruit gehaald kan worden, b.v. een konijn dat een smoking draagt en een wandelstok vasthoudt (of een enkel bestand of een hele menubalk op je website).

git rmvertelt de map .gitom te stoppen met toestaan dat er iets uit de hoed wordt gehaald, b.v. stel je voor dat je niet langer wilde dat het konijn deel uitmaakte van je goochelshow. (Belangrijk om op te merken dat je nog steeds een eerdere versie van je show kunt herstellen, waarin het konijn zou zijn opgenomen (je 1999-versie van je blog met Comic Sans), als je dat echt zou willen, maar je huidige show zou het konijn niet bevatten als je gebruikte git rm).


Antwoord 4, autoriteit 11%

Dit is het “ding” dat van uw project een “git”-repository maakt.
De map .gitis de map die wordt aangemaakt als je git initdoet (in het geval van een nieuw project) of als je git clonedoet ( in het geval van een project ergens anders vandaan halen). Zonder .gitis je project een lokaal project en geen git-project, wat betekent dat je geen git-bewerkingen kunt uitvoeren.

git slaat de metadata en objectdatabase voor het project op in deze map zoals:

  1. Externe informatie (met welke externe server uw project is verbonden)
  2. Geschiedenis van alle lokale commits
  3. Vertakkingsinformatie (naar welke vertakking verwijst uw huidige projectstatus (HEAD))
  4. Alle logs van alle lokale commits die je ooit hebt gemaakt (inclusief wijzigingen terugzetten)

Raadpleeg de officiële documentatie van git om meer te weten:
https://git-scm.com/ book/nl/v1/Git-Basics-Getting-a-Git-Repository


Antwoord 5, autoriteit 4%

Kortom, het betekent dat je dir wordt afgehandeld door Git (Git-repository). Als je het ergens anders naartoe verplaatst (of verwijdert), krijg je zoiets te zien als:

fataal: geen git-repository (of een van de bovenliggende mappen): .git

elke keer dat je daar het ‘git *’ commando gebruikt.

Je kunt de .gitdirectory ergens anders verplaatsen met:

git –git-dir=/myproject_path/myproject.git log –oneline

Of:

GIT_DIR=/myproject_path/myproject.git exporteren

Maar ik raad het niet aan om het te doen.
Let op dat het maar 1 map is, in tegenstelling tot SVN.

Het bevat alle relevante informatie voor GIT om je code te verwerken, zoals de positie van de HEAD, hooks om toe te passen voor/na commit/push en enkele andere bestanden.

Misschien het meest “beroemde” bestand binnenin is het configbestand dat al je branchesinfo bevat.

Beveel aan om hiermeer info.


Antwoord 6

wat staat er in je .gitdirectory

Als je nieuwsgierig was — „ —, kan deze bron je misschien helpen

http://gitready.com /advanced/2009/03/23/whats-inside-your-git-directory.html

De basisstructuur ziet er als volgt uit:

.
|-- COMMIT_EDITMSG
|-- FETCH_HEAD
|-- HEAD
|-- ORIG_HEAD
|-- branches
|-- config
|-- description
|-- hooks
|   |-- applypatch-msg
|   |-- commit-msg
|   |-- post-commit


gaat verder op de site

Other episodes