How do I export a git log to a text file?

后端 未结 10 1527
醉酒成梦
醉酒成梦 2020-12-07 12:11

I want to export the log of all commits in a repo to a text file, is there any way to do this?

相关标签:
10条回答
  • 2020-12-07 12:31

    In my case i found this was helpful

    git log --after="2020-3-20" --pretty=format:'Author : %an %nDate/Time : %aD%nCommit : %s' | paste > log.txt

    This will generate :

    Author : your name

    Date/Time : Commit Date time

    Commit : Commit message

    0 讨论(0)
  • 2020-12-07 12:41

    This is what worked for me with Git Bash on Windows 7:

    git log > /C/Users/<user-name>/Desktop/git-log.txt

    replace <user-name> with your user name.

    The file will be exported to your Desktop from where you can read it.

    Good Luck...

    0 讨论(0)
  • 2020-12-07 12:44

    You may use the > symbol send the output to a file. For example:

    git log > commits.txt
    
    0 讨论(0)
  • 2020-12-07 12:44

    You can make log report more clearly, by

    (1) setting number of latest commits (for example, in below command, we get latest 50 commits, you can change it to 100, 500, etc.)

    (2) display long commit in one line This command is display commit log in current branch:

     git log --oneline -50 > log50_latest_commits.txt
    

    (3) If you want display commit at all branch

     git log --all --oneline -50 > log50_latest_commits.txt
    

    Generated text file will stand at the current directory.

    Reference: https://git-scm.com/docs/git-log

    (tested on git version 2.11.0.windows.1 and it works on many other versions of Git)

    0 讨论(0)
  • 2020-12-07 12:44

    Its been long since this question was asked and by that time things have been evolved.

    But, it is very interesting that all answers here are correct but not really addressing a post command error which is also very common. Lets try to understand . . . .

    Who knew it was super easy. Run a simple command

    git log -p --all > git_log.txt
    

    but then I strucked on an error

    > warning: inexact rename detection was skipped due to too many files.
    > warning: you may want to set your diff.renameLimit variable to at least 2951 and retry the command.
    

    and we had a problem. The output file was half a gig.

    We just wanted the first half of 2018 which we are able to do with --after and --until

    git log --pretty=format:"%ad - %an: %s" --after="2018-01-01" --until="2018-06-30" > git_log.txt
    

    This worked nicely for our purposes and was nice to know that we could change the format if need be.

    0 讨论(0)
  • 2020-12-07 12:46
    git log --before="2019-2-23" --pretty=format:'"%h","%an","%ae","%aD","%s",' --shortstat --no-merges | paste - - - > log.txt
    
    0 讨论(0)
提交回复
热议问题