官术网_书友最值得收藏!

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
主站蜘蛛池模板: 广南县| 平阴县| 曲周县| 长泰县| 固镇县| 黄梅县| 高清| 新巴尔虎左旗| 六枝特区| 郑州市| 博湖县| 河北区| 湟源县| 云南省| 青河县| 盐亭县| 喀喇沁旗| 屯门区| 永安市| 岳阳县| SHOW| 弥渡县| 台南市| 东城区| 丰城市| 葫芦岛市| 迭部县| 屏山县| 澄迈县| 铁岭县| 徐水县| 祁东县| 连平县| 仙游县| 阜宁县| 无极县| 宁蒗| 小金县| 鸡西市| 堆龙德庆县| 达日县|