Git Workflow

  1. git add
  2. git commit

Zoals we zojuist hebben geleerd, is het toevoegen of vastleggen van een bestand in feite een proces in twee stappen.

  • git add

    Voeg de bestanden toe aan het tijdelijke gebied. Zoals het onderstaande commando,

    $ git add test1.txt
    

    file1.txt wordt vanuit uw werkkopie aan het verzamelgebied toegevoegd en is gereed om naar de gegevensopslagruimte te gaan. Wanneer we een bestand maken, staat het op onze werkkopie, dan op de lokale computer en na git add opdracht gaat het naar het verzamelgebied.

  • git commit

    Alle bestanden uit uw verzamelgebied zijn nodig om ze naar de repository te duwen.

    $ git commit -m "commit message"
    

    Normaal gesproken voegen we een bericht toe om te beschrijven wat deze commit doet, zoals wat we hebben gewijzigd in de bestanden of projecten, daarom zouden we in de toekomst de loginformatie van deze commit kunnen krijgen.

git add

Nadat u een bestand hebt gewijzigd en opgeslagen, is dit bestand op onze computer anders dan het bestand in onze repository, omdat het in de repository nog steeds dezelfde inhoud heeft vóór deze wijziging. Als u typt git status , ziet u Git misschien dat uw bestand is bijgewerkt.

$ git status
On branch master
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

    modified:   test1.txt

no changes added to commit (use "git add" and/or "git commit -a")

Zoals voorgesteld door Git , gebruiken we git add om de bestanden bij te werken die zullen worden vastgelegd.

$ git add test1.txt

Nje kan u dit bijgewerkte bestand van het tijdelijke gebied naar de gegevensopslagruimte vastleggen.

Soms hebben we meerdere bestanden bijgewerkt en natuurlijk kunnen we op deze manier bestanden toevoegen,

$ git add test1.txt test2.txt test3.txt

Maar het geeft je veel hoofdpijn als je veel bestanden hebt of als de bestandsnaam te lang is. Git heeft een snelkoppeling om alle bijgewerkte bestanden en niet-bijgehouden bestanden toe te voegen aan het verzamelgebied,

$ git add .

Hiermee . worden alle bestanden bedoeld die verschillen van de gegevensopslagruimte.

git commit

We hebben laten zien hoe te gebruiken git commit toen we andere functies van introduceerden Git . Kortom, git commit duwt het staginggebied naar de repository, en je wordt sterk aangeraden om het commit bericht toe te voegen om te beschrijven wat je hebt gewijzigd voor deze specifieke commit. Je zou al je commit log-informatie terug kunnen krijgen met de git log opdracht.

Commit rechtstreeks naar de repository

Voordat we ons verbinden, moeten we wijzigingen aan het verzamelgebied toevoegen. Dan zouden we ze kunnen plegen. Maar het is echt niet nodig om ze aan het verzamelgebied toe te voegen. Ten eerste omdat we weten dat deze wijzigingen we in ons laatste project, in onze repository of op de server willen zodat iedereen bijgewerkte bestanden heeft.

Dus wat we zouden kunnen doen is git status eerst controleren , zodat we weten wat er is gewijzigd in de werkkopie. Dan zouden we direct kunnen gebruiken git commit voordat we deze aanpassing zelfs aan het verzamelgebied toevoegen.

$ git commit -a -m "commit message here."

wat we hier doen, is dat we een snelkoppeling gebruiken in plaats van deze toe te voegen aan het verzamelgebied. Maar dit is alleen nuttig in bepaalde situaties, wanneer u deze opdracht gebruikt, moet u voorzichtig zijn, omdat deze alles in uw werkkopie opneemt en ze rechtstreeks naar de gegevensopslagruimte duwt.

Commit wijzigen

We hadden een situatie kunnen bereiken na een commit, we vinden een typefout of andere kleine fouten in de code. Natuurlijk kan je de codes herzien en de wijzigingen opnieuw in de repository vastleggen. Maar wat we zouden kunnen doen, is dat we deze meest recente commit herschrijven, en de laatste commit zal worden herschreven met de nieuwe aanpassing.

De vlag --amend hieronder git commit geeft aan Git dat deze commit de vorige commit zal vervangen die niet meer in je werkende branch zal zijn.

$ git commit --amend -m "new information is updated"
Aandacht!

Wijzig nooit een commit die niet de meest recente commit is, omdat een ander teamlid of andere branches de versie hebben die op die commit is gebaseerd. Na aanpassing verliezen ze hun referentiepunt en het is moeilijk om hiervan te herstellen.