2017-10-09 436 views
0

我需要排除在git日誌中刪除的文件。我使用命令git log -1 --name-only --pretty=format:eee6ce6來獲取上次提交時更改的文件名。我使用pre-receive掛鉤來阻止特定的文件類型提交。上面的命令列出了所有已修改的文件。如何在git log命令中排除已刪除的文件?

但我想讓用戶刪除特定的文件類型。我怎樣才能做到這一點?

  • 我也試過這git log -1 --name-only --pretty=format:eee6ce6-filter=d命令,但它也列出了刪除的文件。
  • git log -1 --diff-filter=d --name-only完美的作品。但它也給commit ID, author name, date。我只想要文件名。

回答

2

你可以刪除的文件的名稱中最後一次提交使用git diff

git diff --name-only --diff-filter=D HEAD~1 
+0

這裏什麼'HEAD ^'代表什麼?是否提交ID? – Parkavi

+0

'HEAD ^'表示'HEAD'之前的提交。所以你可以區分它和'HEAD',換句話說就是上次提交的變化。順便說一下,我用'HEAD〜1'替換了'HEAD ^',這意味着完全一樣的東西,但是它更加便攜('HEAD ^'在DOS下不起作用)。 – janos

+0

非常感謝,它完全符合我的要求...... :-) – Parkavi

相關問題