Tutoriel de dém...login
Tutoriel de démarrage rapide Git
auteur:php.cn  temps de mise à jour:2022-04-11 13:44:34

Git afficher l'historique des validations


Après avoir utilisé Git pour soumettre plusieurs mises à jour, ou cloné un projet, si vous souhaitez consulter l'historique de soumission, nous pouvons utiliser la commande git log pour l'afficher.

Pour nos opérations du chapitre précédent, utilisez la commande git log pour lister les enregistrements de commit historiques comme suit :

$ git log
commit 88afe0e02adcdfea6844bb627de97da21eb10af1
Merge: 14b4dca d7e7346
Author: w3cschool <w3c@w3cschool.cc>
Date:   Sun Mar 1 15:03:42 2015 +0800

    Merge branch 'change_site'
    
    Conflicts:
        test.txt

commit 14b4dcadbdc847207651d5a9fae0d315057f346e
Author: w3cschool <w3c@w3cschool.cc>
Date:   Sun Mar 1 14:53:15 2015 +0800

    新增加一行

commit d7e734640da06055e107eaf29cf350b3f1de1c2c
Author: w3cschool <w3c@w3cschool.cc>
Date:   Sun Mar 1 14:48:57 2015 +0800

    changed the site

commit 556f0a0637978097b82287ac665a717623b21f3f
Author: w3cschool <w3c@w3cschool.cc>
Date:   Sun Mar 1 14:40:34 2015 +0800

    removed test2.txt

Nous pouvons utiliser l'option --oneline pour afficher une version concise du documents historiques.

$ git log --oneline
88afe0e Merge branch 'change_site'
14b4dca 新增加一行
d7e7346 changed the site
556f0a0 removed test2.txt
2e082b7 add test2.txt
048598f add test.txt
85fc7e7 test comment from w3cschool.cc

Ce que cela nous dit, c'est l'historique du développement de ce projet.

Nous pouvons également utiliser l'option --graph pour voir quand les branches et les fusions se sont produites dans l'historique. Ce qui suit est la même commande, avec l'option de carte topologique activée :

$ git log --oneline --graph
*   88afe0e Merge branch 'change_site'
|\  
| * d7e7346 changed the site
* | 14b4dca 新增加一行
|/  
* 556f0a0 removed test2.txt
* 2e082b7 add test2.txt
* 048598f add test.txt
* 85fc7e7 test comment from w3cschool.cc

Nous pouvons désormais voir plus clairement quand le travail est bifurqué et quand il est fusionné.

Vous pouvez également utiliser le paramètre '--reverse' pour afficher tous les journaux à l'envers.

$ git log --reverse --oneline
85fc7e7 test comment from w3cschool.cc
048598f add test.txt
2e082b7 add test2.txt
556f0a0 removed test2.txt
d7e7346 changed the site
14b4dca 新增加一行
88afe0e Merge branch 'change_site'

Si vous souhaitez uniquement trouver le journal de soumission d'un utilisateur spécifié, vous pouvez utiliser la commande : git log --author Par exemple, disons que nous voulons trouver la partie soumise par Linus dans Git. code source :

$ git log --author=Linus --oneline -5
81b50f3 Move 'builtin-*' into a 'builtin/' subdirectory
3bb7256 make "index-pack" a built-in
377d027 make "git pack-redundant" a built-in
b532581 make "git unpack-file" a built-in
112dd51 make "mktag" a built-in

Si vous Pour préciser une date, plusieurs options sont disponibles : --since et --before, mais vous pouvez également utiliser --until et --after.

Par exemple, si je voulais voir tous les commits dans un projet Git datant de trois semaines et après le 18 avril, je pourrais le faire (j'ai également utilisé l'option --no-merges pour masquer les commits de fusion) :

$ git log --oneline --before={3.weeks.ago} --after={2010-04-18} --no-merges
5469e2d Git 1.7.1-rc2
d43427d Documentation/remote-helpers: Fix typos and improve language
272a36b Fixup: Second argument may be any arbitrary string
b6c8d2d Documentation/remote-helpers: Add invocation section
5ce4f4e Documentation/urls: Rewrite to accomodate transport::address
00b84e9 Documentation/remote-helpers: Rewrite description
03aa87e Documentation: Describe other situations where -z affects git diff
77bc694 rebase-interactive: silence warning when no commits rewritten
636db2c t3301: add tests to use --format="%N"

Plus de commandes git log peuvent être consultées :http://git-scm.com/docs/git-log

Site Web PHP chinois