Wie in der gewählten Erklärung angegeben, Git-Reset ist gut. Aber heutzutage verwenden wir oft Untermodule: Repositories innerhalb von Repositories. Wenn Sie zum Beispiel ZF3 und jQuery in Ihrem Projekt verwenden, möchten Sie wahrscheinlich, dass diese aus ihren ursprünglichen Repositories geklont werden. In diesem Fall Git-Reset ist nicht genug. Wir müssen die Untermodule, die in unserem Repository definiert sind, auf genau diese Version aktualisieren:
git checkout master
git fetch origin master
git reset --hard origin/master
git pull
git submodule foreach git submodule update
git status
ist es dasselbe, wie wenn Sie rekursiv in das Arbeitsverzeichnis eines jeden Untermoduls kommen (cd) und es ausführen:
git submodule update
Und es ist ganz anders als
git checkout master
git pull
weil Untermodule nicht auf die Verzweigung, sondern auf die Übergabe verweisen.
In diesen Fällen, wenn Sie einen Zweig für 1 oder mehrere Untermodule manuell auschecken können Sie
git submodule foreach git pull