Basis van Linux en de opdrachtregel

Na het bewerken van main.c, een bestand dat met Git wordt beheerd, werd alleen „git commit -m "fix"” uitgevoerd; „no changes added to commit” werd getoond en er werd niets gecommit. Wat is de reden?

  1. AVóór het committen moeten de wijzigingen met git push naar de gedeelde repository worden gestuurd
  2. BWijzigingen die in een commit moeten komen, moeten eerst met git add in de staging area worden geregistreerd
  3. CGit commit automatisch wanneer een bestand wordt opgeslagen, dus git commit hoeft niet te worden uitgevoerd
Antwoord en toelichting tonen

Antwoord: B. Wijzigingen die in een commit moeten komen, moeten eerst met git add in de staging area worden geregistreerd

In Git worden van de wijzigingen die in de werkdirectory zijn aangebracht alleen die welke met git add in de staging area (de index) zijn geregistreerd, vastgelegd door de volgende git commit. Dankzij dit mechanisme in twee stappen kun je uit verschillende bewerkingen alleen de samenhangende wijzigingen kiezen en er één commit van maken. git status toont welke wijzigingen gestaged zijn. Er bestaat ook git commit -a, dat alle wijzigingen in gevolgde bestanden in één keer registreert en commit.

Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Basis van Linux en de opdrachtregel

  1. Je hebt in Git git commit uitgevoerd, maar de commit verschijnt nog niet in de GitHub-repository die het team deelt. Wat is de reden?
  2. In het .gitignore-bestand van een project dat met Git wordt beheerd, is „build/” geschreven, maar wijzigingen in build/out.log, dat eerder is gecommit, blijven in git status verschijnen. Wat is de reden?
  3. Welke combinatie van standaarddirectory's in Linux en wat erin wordt geplaatst, is juist?
  4. Welke beschrijving van de directory /proc in Linux is juist?
  5. De directory /home/alice/data bestaat, en de huidige directory is /home/alice/work. Welke directory wordt getoond als eerst „cd ../data” en daarna „pwd” wordt uitgevoerd?