2015-06-29 10 views
9

Ich lese das Buch Pro Git, second edition.Was ist der Unterschied zwischen Staging und Caching?

Es heißt, auf Seite 21:

git diff --staged Dieser Befehl begehen Ihre inszenierten Änderungen an Ihrem letzten vergleicht.

und eine Seite später (ohne zu erklären, welche Mittel im Cache)

git diff --cached, um zu sehen, was Sie bisher inszeniert haben.

und jetzt bin ich ein bisschen verloren. Was ist der Unterschied zwischen Staging und Caching?

+1

Sie sind genaue Synonyme. '--cached' ist älter als' --gestaged'; Letzteres wurde hinzugefügt, um den Begriff "Staging Area" zu erhalten. – Jubobs

Antwort

3

Das „Staging-Bereich“ oder „Cache“ sind beide Synonyme für die gleiche Sache, die einen anderen Namen in den meisten anderen Kontexten in Git hat: Der Index.

Der Index ist der Bereich, in dem Änderungen sind inszeniert, wenn Sie sie hinzufügen, mit git add (oder git rm). Es ist die Menge der Änderungen, die ausgeführt wird, wenn Sie git commit tun.

Alle drei Namen werden normalerweise synonym verwendet, obwohl "cache" selten außerhalb des --cached Parameters in git diff verwendet wird.

5

Sie sind auch; von der Git docs:

Dieses Formular dient zum Anzeigen der Änderungen, die Sie für das nächste Commit relativ zum named-Objekt durchgeführt haben. Normalerweise möchten Sie einen Vergleich mit dem letzten Commit durchführen. Wenn Sie also nicht angeben, wird standardmäßig HEAD verwendet. Wenn HEAD nicht vorhanden ist (z. B. ungeborene Zweige) und nicht angegeben ist, werden alle gestuften Änderungen angezeigt. --gestaged ist ein Synonym für --cached.

Verwandte Themen