Git

Git Alle gewijzigde bestanden toevoegen

Git Alle gewijzigde bestanden toevoegen
Als je te maken hebt met Git add, heb je meerdere opties om alle gewijzigde bestanden toe te voegen. Laten we een paar scenario's bekijken om de mogelijkheden te begrijpen.

Laten we een nieuw project initialiseren.

$ mkdir-project
 
$ cd-project
 
$ git init
Geïnitialiseerd lege Git-repository in /Users/zakh_eecs/_work/LearnGIT/git_add/project/.git/
 
$ echo "Nieuw project" > Leesmij.tekst
 
$ git add ReadMe.tekst
 
$ git commit -m "Initial Commit"
[master (root-commit) 47b9af1] Initiële commit
1 bestand gewijzigd, 1 invoeging (+)
aanmaakmodus 100644 Leesmij.tekst

In dit project hebben we een ReadMe . toegevoegd.txt-bestand. We gebruikten het “git add” commando om de ReadMe toe te voegen.tekst. Het add-commando is niet alleen voor het toevoegen van bestanden. Het voegt ook elke bestandswijziging toe. Voor deze tutorial zullen we alleen bestanden toevoegen en verwijderen om het simpel te houden. Maar beschouw het add-commando als het toevoegen van wijzigingen aan het staging-gebied. Vervolgens moet je de opdracht commit gebruiken om de wijzigingen officieel te maken.

Als je met veel bestanden en mappen te maken hebt, is het moeilijk om elke wijziging afzonderlijk toe te voegen. Je kunt dus de volgende commando's gebruiken:

$ git toevoegen .
$ git add -A

Laten we eens kijken hoe de twee commando's zich gedragen:

$ raak een . aan.txt b.txt c.tekst
 
$ git toevoegen .
 
$ git-status
Op branch master
Door te voeren wijzigingen:
(gebruik "git reset HEAD" … " om uit te zetten)
 
nieuw bestand:   a.tekst
nieuw bestand:   b.tekst
nieuw bestand:   c.tekst
 
$ git commit -m "Voeg een . toe.txt, b.txt, c.tekst"
[master 9ca90fc] Voeg een . toe.txt, b.txt, c.tekst
3 bestanden gewijzigd, 0 invoegingen (+), 0 verwijderingen (-)
maak modus 100644 a.tekst
maakmodus 100644 b.tekst
maakmodus 100644 c.txt $ raak x . aan.txt ja.txt z.tekst
 
$ git add -A
 
$ git-status
Op branch master
Door te voeren wijzigingen:
(gebruik "git reset HEAD" … " om uit te zetten)
 
nieuw bestand:   x.tekst
nieuw bestand:   y.tekst
nieuw bestand:   z.tekst
 
$ git commit -m "Voeg x toe.txt, ja.txt, z.tekst"
[master 8af8c12] Voeg x . toe.txt, ja.txt, z.tekst
3 bestanden gewijzigd, 0 invoegingen (+), 0 verwijderingen (-)
aanmaakmodus 100644 x.tekst
maakmodus 100644 y.tekst
maakmodus 100644 z.tekst

Beide opties lijken hetzelfde te werken.

Om verder te onderzoeken, laten we een situatie creëren waarin we iets toevoegen op het hoofdniveau van de werkdirectory en dan meer bestanden in een map toevoegen:

$ raak 1 . aan.tekst
 
$ mkdir nieuw
 
$ cd nieuw
 
$ raak m aan.txt niet.txt uit.tekst
 
$ git toevoegen .
 
$ git-status
Op branch master
Door te voeren wijzigingen:
(gebruik "git reset HEAD" … " om uit te zetten)
 
nieuw bestand:   m.tekst
nieuw bestand:   n.tekst
nieuw bestand:   o.tekst
 
Niet-getrackte bestanden:
(gebruik "git add ." … " om op te nemen in wat zal worden gepleegd)
 
… /1.tekst

Merk op dat Git de 1 . niet heeft toegevoegd.txt-bestand in de map op een hoger niveau.

Als we een map hebben gemaakt met de naam genest met d.txt-bestand en gebruik de git add. commando opnieuw, we zien dat o.txt is toegevoegd maar 1.txt is nog niet toegevoegd.

$ mkdir genest
 
$ raak genest/d . aan.tekst
 
$ git toevoegen .
 
$ git-status
Op branch master
Door te voeren wijzigingen:
(gebruik "git reset HEAD" … " om uit te zetten)
 
nieuw bestand:   m.tekst
nieuw bestand:   n.tekst
nieuw bestand:   genest/d.tekst
nieuw bestand:   o.tekst
 
Niet-getrackte bestanden:
(gebruik "git add ." … " om op te nemen in wat zal worden gepleegd)
 
… /1.tekst

Laten we nu het git add -A commando gebruiken:

$ git add -A
 
$ git-status
Op branch master
Door te voeren wijzigingen:
(gebruik "git reset HEAD" … " om uit te zetten)
 
nieuw bestand:  ... /1.tekst
nieuw bestand:   m.tekst
nieuw bestand:   n.tekst
nieuw bestand:   genest/d.tekst
nieuw bestand:   o.tekst

Nu, 1.txt in de map is toegevoegd aan het verzamelgebied.
Zo zien de mappen eruit

projecteren
|--1.tekst
|--LeesMij.tekst
|--a.tekst
|--b.tekst
|--c.tekst
|--x.tekst
|--y.tekst
|--z.tekst
'-- nieuw
|--m.tekst
|--n.tekst
|--uit.tekst
'-- genest
|--d.tekst

Dus, wanneer je “git add . gebruikt .” commando, het zal alle wijzigingen van dat niveau toevoegen. Maar wanneer je de "git add -A" optie gebruikt, zal het zoeken naar wijzigingen in de module en deze toevoegen.

Conclusie

Git add-opdracht biedt krachtige manieren om gewijzigde bestanden toe te voegen. U kunt de natuurlijke directoryhiërarchie van uw codes gebruiken om te bepalen wat er wordt toegevoegd.

Verdere studie:

  • https://git-scm.com/docs/git-add
  • Git: Leer versiebeheer met Git: een stapsgewijze ultieme beginnershandleiding
  • Versiebeheer met Git: Krachtige tools en technieken voor collaboratieve softwareontwikkeling
  • Pro Git, 2e editie
Top 5 Game Capture-kaarten
We hebben allemaal gezien en genoten van streaming gameplays op YouTube. PewDiePie, Jakesepticye en Markiplier zijn slechts enkele van de beste gamers...
Hoe een spel op Linux te ontwikkelen
Tien jaar geleden zouden niet veel Linux-gebruikers voorspellen dat hun favoriete besturingssysteem ooit een populair spelplatform voor commerciële vi...
Open source-poorten van commerciële game-engines
Gratis, open source en platformonafhankelijke game-engine-recreaties kunnen worden gebruikt om zowel oude als enkele van de vrij recente gametitels te...