2013-05-02 3 views

Antwort

133

Von Verzeichnis foo/ verwenden

git log -- A B 

Sie benötigen den '-' <path>.. von den <since>..<until> refspecs zu trennen.

$ git log --oneline -- src/nvfs 
d6f6b3b Changes for Mac OS X 
803fcc3 Initial Commit 

$ git log --oneline 803fcc3 -- src/nvfs 
803fcc3 Initial Commit 

$ git log --oneline 
d6f6b3b Changes for Mac OS X 
96cbb79 gitignore 
803fcc3 Initial Commit 
+0

durch die Art und Weise, die Sie in dem "foo" foldrer, bevor Sie bleiben sollen "git lügt - AB" –

+1

Für Menschen abschöpfen Lese, dies zeigt Änderungen in 'A' _und_' B', nicht nur 'A' als OP angefordert – aidan

+0

Das Problem ist für mich A ist ein sehr langer Weg ... – AKS

16

Sie können git log mit den Pfadnamen der jeweiligen Ordner verwenden:

git log A B

Das Protokoll wird zeigen Commits in A und B nur gemacht. Ich schmeiße normalerweise --stat, um die Dinge etwas hübscher zu machen, was für schnelle Commit-Reviews hilft.

15

, wenn Sie es sehen wollen grafisch können Sie

verwenden
gitk -- foo/A 

enter image description here

3

Geben Sie

git log .

aus dem bestimmten Verzeichnis, es gibt auch verpflichtet, dass Verzeichnis.

+0

Das funktioniert auch. Auch nützlich, danke. – David

+0

Nicht für mich gearbeitet .. Nach der Landung in bestimmten Verzeichnis und geben Sie den Git-Log. gab mir alle commits von root. – AKS

0

git log -p ist sehr nützlich, wenn Sie den vollständigen Unterschied aller geänderten Dateien benötigen.

Beispiel: Alle detaillierten Änderungen in einem bestimmten Version Bereich

git log -p 8a5fb..HEAD -- . 

commit 62ad8c5d 
Author: Scott Tiger 
Date: Mon Nov 27 14:25:29 2017 +0100 

    My comment 

... 
@@ -216,6 +216,10 @@ public class MyClass { 

+ Added 
- Deleted