- Git Version Control Cookbook
- Aske Olsson Rasmus Voss
- 246字
- 2021-12-08 12:33:48
Getting a list of the changed files
As seen in the previous recipe where a list of fixed issues was extracted from the history, a list of all the files that have been changed since the last release can also easily be extracted. The files can be further filtered to find those that have been added, deleted, modified, and so on.
Getting ready
The same repository and HEAD
position (HEAD
pointing to b14a939
) as seen in the previous recipe will be used. The release is also the same, which is v3.1.0.201310021548-r
.
How to do it...
The following command lists all the files changed since the last release (v3.1.0.201310021548-r
):
$ git diff --name-only v3.1.0.201310021548-r..HEAD org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.3.target org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.4.target org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/DescribeTest.java org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/FetchTest.java org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/Describe.java ...
How it works...
The git diff
command operates on the same revision range as git log
did in the previous recipe. By specifying --name-only
, Git will only give the paths of the files as output changed by the commits in the range specified.
There's more...
The output of the command can be further filtered; if we only want to show which files have been deleted in the repository since the last commit, we can use the --diff-filter
switch with git diff
:
$ git diff --name-only --diff-filter=D v3.1.0.201310021548-r..HEAD org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/SampleDataRepositoryTestCase.java org.eclipse.jgit.packaging/org.eclipse.jgit.target/org.eclipse.jgit.target.target org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/GCTest.java
There are also switches for the files that have been added (A
), copied (C
), deleted (D
), modified (M
), renamed (R
), and so on.
See also
- For more information, visit the help page by running
git help diff
- Implementing Modern DevOps
- Raspberry Pi for Python Programmers Cookbook(Second Edition)
- AngularJS Testing Cookbook
- Getting Started with CreateJS
- 編譯系統透視:圖解編譯原理
- SQL基礎教程(視頻教學版)
- Node.js Design Patterns
- Julia高性能科學計算(第2版)
- 第一行代碼 C語言(視頻講解版)
- SQL Server數據庫管理與開發兵書
- The Professional ScrumMaster’s Handbook
- Building Machine Learning Systems with Python(Second Edition)
- Spring MVC+MyBatis開發從入門到項目實踐(超值版)
- Julia 1.0 Programming Complete Reference Guide
- Clojure for Java Developers