Maison outils de développement git git extrait les fichiers de modification d'intervalle de temps

git extrait les fichiers de modification d'intervalle de temps

May 20, 2023 am 09:48 AM

Git est un outil de contrôle de version très populaire qui nous permet de gérer facilement les modifications de code et la collaboration. Et lorsque nous devons extraire l’historique des modifications d’un fichier spécifié dans un délai donné, comment devons-nous procéder ? Aujourd'hui, nous allons présenter comment utiliser les commandes Git pour extraire les enregistrements de modification de fichiers dans un intervalle de temps.

Tout d'abord, nous devons comprendre quelques connaissances de base de Git :

  1. Enregistrement de soumission Git

Dans Git, chaque soumission de code sera enregistrée et sauvegardée en tant qu'enregistrement de soumission, ce qui est un commit. Chaque validation possède une valeur de hachage unique utilisée pour distinguer les différents enregistrements de validation.

  1. Historique des soumissions Git

Tous les enregistrements de soumission sont enregistrés dans le référentiel Git, formant un historique de soumission. Nous pouvons utiliser les commandes Git pour afficher l'historique des soumissions, y compris la valeur de hachage, l'auteur, l'heure de soumission, les fichiers modifiés et d'autres informations de chaque soumission.

  1. Intervalle de temps Git

Dans Git, nous pouvons utiliser des intervalles de temps pour représenter une période de temps. Il existe plusieurs façons d'exprimer des intervalles de temps, telles que :

  • Date : 01/01/2019
  • Temps relatif : il y a 2 semaines
  • Période : 01/01/2019..31/12/2019

Compris Après ces connaissances de base, explorons comment extraire les enregistrements de modifications de fichiers dans un intervalle de temps.

Supposons que nous ayons l'historique de soumission suivant :

commit 2942849f3f44e6da111d2b58fe6c24c156835c90
Author: John Doe <john@example.com>
Date:   Mon Feb 22 11:27:23 2021 +0800

    Add README.md

commit e0fdb2b0364a73f347f1a1b46c13bfbd5ac07a08
Author: John Doe <john@example.com>
Date:   Sat Feb 20 14:52:32 2021 +0800

    Fix typo in index.html

commit 71f6be88b1562fe596c69b88ac9f72dbeac78786
Author: Alice Zhang <alice@example.com>
Date:   Fri Feb 19 22:33:12 2021 +0800

    Update index.html

commit 275711456d94c307b6416d94da74e5c8b98497c7
Author: Bob Chen <bob@example.com>
Date:   Thu Feb 18 09:45:43 2021 +0800

    Add new feature

commit fd9bf6e768bb58d2a1ebf0b604805d7cca34c563
Author: Alice Zhang <alice@example.com>
Date:   Wed Feb 17 15:18:02 2021 +0800

    Initial commit
Copier après la connexion

Nous souhaitons extraire tous les fichiers README.md modifiés dont l'heure de soumission était comprise entre le 18 et le 21 février. Vous pouvez utiliser la commande suivante :

git log --since=2021-02-18 
        --until=2021-02-21 
        --pretty=format:"%h - %an, %ar : %s" 
        --name-only 
        --grep='README.md'
Copier après la connexion

Analyse des commandes :

  • git log : afficher l'historique des soumissions
  • --since=2021-02-18 : afficher uniquement les soumissions du 2021-02-18
  • --jusqu'à =2021 -02-21 : Limiter l'affichage aux seules soumissions jusqu'au 2021-02-21
  • --pretty=format : "%h - %an, %ar : %s" : Spécifiez le format d'impression, y compris la valeur de hachage soumise, auteur, heure de soumission et informations de soumission
  • --name-only : affiche uniquement le nom du fichier modifié, pas le contenu modifié du fichier
  • --grep='README.md' : recherche uniquement les fichiers contenant README.md records

Après avoir exécuté la commande ci-dessus, les résultats suivants seront affichés :

2942849 - John Doe, 29 minutes ago : Add README.md
e0fdb2b - John Doe, 2 days ago : Fix typo in index.html
Copier après la connexion

Comme vous pouvez le voir, seuls deux enregistrements de soumission remplissent l'intervalle de temps et les conditions grep. Si nous voulons voir les fichiers spécifiques modifiés dans ces soumissions, nous pouvons ajouter une option --stat :

git log --since=2021-02-18 
        --until=2021-02-21 
        --pretty=format:"%h - %an, %ar : %s" 
        --name-only 
        --grep='README.md' 
        --stat
Copier après la connexion

Analyse des commandes :

  • --stat : Afficher la liste des fichiers modifiés par chaque soumission et la situation globale du fichier modification

Après avoir exécuté la commande ci-dessus, les résultats suivants seront affichés :

2942849 - John Doe, 29 minutes ago : Add README.md
 README.md | 1 +
 1 file changed, 1 insertion(+)

e0fdb2b - John Doe, 2 days ago : Fix typo in index.html
 README.md | 2 ++
 1 file changed, 2 insertions(+)
Copier après la connexion

Comme vous pouvez le voir, la première soumission consiste à ajouter le fichier README.md, et la deuxième soumission consiste à modifier le fichier README.md et ajouté deux lignes.

En plus des méthodes ci-dessus pour afficher l'historique des soumissions, nous pouvons également utiliser la commande git blâme pour afficher l'historique des modifications des fichiers, y compris la valeur de hachage et l'auteur de la soumission.

git blame README.md 
        --since=2021-02-18 
        --until=2021-02-21
Copier après la connexion

Analyse des commandes :

  • git blâme : afficher l'historique des modifications du fichier
  • README.md : spécifier le fichier à afficher
  • --since=2021-02-18 : limiter l'affichage à ceux commençant à partir de 2021-02-18 Historique des modifications
  • --until=2021-02-21 : limite pour afficher uniquement l'historique des modifications jusqu'au 2021-02-21

Après avoir exécuté la commande ci-dessus, les résultats suivants seront affichés :

2942849f (John Doe 2021-02-22 11:27:23 +0800 1) This is a README file.
e0fdb2b0 (John Doe 2021-02-20 14:52:32 +0800 2) It contains information about the project.
e0fdb2b0 (John Doe 2021-02-20 14:52:32 +0800 3)
e0fdb2b0 (John Doe 2021-02-20 14:52:32 +0800 4) Update: fix typo.
Copier après la connexion

Comme vous pouvez le voir, les premières lignes 1 et 4 sont deux soumissions différentes, toutes deux soumises par John Doe.

Pour résumer, nous pouvons utiliser les commandes Git pour extraire les enregistrements de modification de fichiers dans un intervalle de temps. Ces commandes sont faciles à maîtriser et ne nécessitent que la compréhension de quelques concepts et paramètres de base. Lorsque nous devons afficher l'historique des modifications du code au cours d'une certaine période de temps, ces commandes peuvent nous aider à localiser rapidement les enregistrements de soumission pertinents et à afficher les fichiers et le contenu modifiés.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Vous avez un jeu croisé?
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Git vs GitHub: contrôle de version et hébergement de code Git vs GitHub: contrôle de version et hébergement de code Apr 11, 2025 am 11:33 AM

Git est un système de contrôle de version et GitHub est une plate-forme d'hébergement de code basée sur GIT. Git est utilisé pour gérer les versions de code et prend en charge les opérations locales; GitHub fournit des outils de collaboration en ligne tels que le suivi des problèmes et PullRequest.

Git est-il le même que Github? Git est-il le même que Github? Apr 08, 2025 am 12:13 AM

Git et Github ne sont pas la même chose. Git est un système de contrôle de version et GitHub est une plate-forme d'hébergement de code basée sur GIT. Git est utilisé pour gérer les versions de code et GitHub fournit un environnement de collaboration en ligne.

Github est-il difficile à apprendre? Github est-il difficile à apprendre? Apr 02, 2025 pm 02:45 PM

Github n'est pas difficile à apprendre. 1) Maître les connaissances de base: GitHub est un système de contrôle de version basé sur GIT qui aide à suivre les changements de code et le développement collaboratif. 2) Comprendre les fonctions principales: les enregistrements de contrôle de version chaque soumission, prenant en charge le travail local et la synchronisation à distance. 3) Apprenez à utiliser: de la création d'un référentiel pour pousser les validations, à l'utilisation des branches et des demandes de traction. 4) Résoudre des problèmes communs: tels que la fusion des conflits et oublier d'ajouter des fichiers. 5) Pratique d'optimisation: utilisez des messages de soumission significatifs, nettoyez les succursales et gérez les tâches à l'aide de la carte de projet. Grâce à la pratique et à la communication communautaire, la courbe d'apprentissage de Github n'est pas raide.

Dois-je mettre Git ou Github sur mon CV? Dois-je mettre Git ou Github sur mon CV? Apr 04, 2025 am 12:04 AM

Sur votre CV, vous devez choisir d'écrire Git ou GitHub en fonction de vos exigences de position et de votre expérience personnelle. 1. Si le poste nécessite des compétences GIT, mettez en surbrillance Git. 2. Si le poste valorise la participation de la communauté, montrez Github. 3. Assurez-vous de décrire l'expérience d'utilisation et les cas de projet en détail et terminer avec une phrase complète.

Microsoft possède-t-il Git ou Github? Microsoft possède-t-il Git ou Github? Apr 05, 2025 am 12:20 AM

Microsoft ne possède pas GIT, mais possède GitHub. 1.Git est un système de contrôle de version distribué créé par Linus Torvaz en 2005. 2. GitHub est une plate-forme d'hébergement de code en ligne basée sur GIT. Il a été fondé en 2008 et acquis par Microsoft en 2018.

Qu'est-ce que Git en mots simples? Qu'est-ce que Git en mots simples? Apr 09, 2025 am 12:12 AM

Git est un système de contrôle de version distribué open source qui aide les développeurs à suivre les modifications des fichiers, à travailler ensemble et à gérer les versions de code. Ses fonctions principales incluent: 1) l'enregistrement des modifications de code, 2) la secours vers les versions précédentes, 3) le développement collaboratif et 4) Créer et gérer les branches pour le développement parallèle.

Dois-je commencer par Git ou Github? Dois-je commencer par Git ou Github? Apr 06, 2025 am 12:09 AM

Le départ de Git est plus adapté à une compréhension approfondie des principes de contrôle des versions, et commencer à Github est plus adapté pour se concentrer sur la collaboration et l'hébergement de code. 1.Git est un système de contrôle de version distribué qui aide à gérer l'historique des versions du code. 2. GitHub est une plate-forme en ligne basée sur GIT, offrant des capacités d'hébergement et de collaboration de code.

Comment utiliser GitHub pour HTML? Comment utiliser GitHub pour HTML? Apr 07, 2025 am 12:13 AM

La raison de l'utilisation de GitHub pour gérer les projets HTML est qu'il fournit une plate-forme pour le contrôle des versions, le développement collaboratif et la présentation des œuvres. Les étapes spécifiques incluent: 1. Créer et initialiser le référentiel GIT, 2. Ajouter et soumettre des fichiers HTML, 3. Push to github, 4. Utilisez GitHubPages pour déployer des pages Web, 5. Utilisez des githubactions pour automatiser la construction et le déploiement. En outre, GitHub prend également en charge les fonctionnalités de révision, d'émission et de traction de code pour aider à optimiser et à collaborer sur les projets HTML.

See all articles