我在perforce資源庫中使用git。我希望能夠確切地知道哪些文件受到了git提交的影響,所以我可以使用post-commit掛鉤並在perforce中打開這些文件進行編輯,以便perforce服務器知道這些更改。
有沒有一種方法可以在提交後的鉤子中得到一個列表,確切地說哪些文件受到了提交的影響?有沒有辦法用git post-commit hook獲取提交的受影響文件?
5
A
回答
2
要獲取原始數據:
git diff-tree HEAD
6
獲取當前分支的頭部受影響的路徑(相對於$GIT_DIR
)與
git show --pretty=oneline --name-only HEAD | sed 1d
+0
你可以得到完全相同的輸出: git diff-tree --name-only -r HEAD | sed 1d 有趣的是,有幾種方法可以做到這一點...... – bergyman 2010-01-27 19:10:44
+0
在這種情況下,在'git show'上使用'git diff-tree',因爲前者是低級管道,而不是用於人類的瓷器使用。請參閱http://progit.org/book/ch9-1.html – 2010-01-27 19:16:25
1
是git log --name-only
你在找什麼? git log --name-status
也顯示了像M修改,A添加(我推測)等動作。
最後,選項--pretty=oneline
可能會方便更容易解析。
顯然你可能已經想通了,但我添加了這個以備將來參考。
相關問題
- 1. 獲取受提交影響的文件和目錄
- 2. Git Post Commit Hook獲取提交編號
- 3. Git - 有沒有辦法查看作者提交的行數?
- 4. 有沒有辦法將幾個git提交合併爲一個提交?
- 5. 獲取受影響的行
- 6. 有沒有辦法從.java文件中獲取.class文件
- 7. 有沒有辦法在`git rebase -i`(交互式)中列出提交的作者?
- 8. 有沒有辦法讓git獲取並且只獲取歷史記錄 - 沒有文件
- 9. mysqli沒有返回受影響的行
- 10. 有沒有辦法查看待處理的請求會影響特定文件?
- 11. Git:獲取提交文件的名稱?
- 12. 有沒有辦法獲取glob解析的文件的名稱?
- 13. Git更改沒有提交提交和未跟蹤文件
- 14. 有沒有辦法通過梯度提升量化自變量的影響?
- 15. 有沒有辦法禁用vim的交換文件警告?
- 16. 有沒有辦法在檢查更改時用git累積提交消息?
- 17. 有沒有辦法刪除github上的所有文件和提交
- 18. 使用reflog取消git rebase時,選擇哪個提交會有影響嗎?
- 19. 有沒有jQuery提交表單來獲取文件下載?
- 20. Git擴展沒有顯示一次提交的所有文件
- 21. 有沒有辦法從XMLHttpRequest響應中獲取參數?
- 22. 有沒有辦法在發佈之前找到GIT中的重要提交?
- 23. 在Git中,有沒有辦法讓任意提交的「友好」名稱?
- 24. 有沒有辦法從`FILE *`獲取文件名?
- 25. 有沒有辦法在xml文件中獲取Bean ID
- 26. 有沒有辦法找出提交了SQL查詢的用戶?
- 27. (iOS)有沒有辦法縮短我的應用程序提交?
- 28. asp.net MVC多租戶:有沒有辦法來覆蓋/影響User.Identity.IsAuthenticated?
- 29. 有沒有辦法影響AlchemyAPI情緒分析
- 30. 有沒有辦法更新dom而不影響鼠標光標?
看起來不像那個讓我看到實際文件的列表 - 它向我展示了受影響的目錄。 – bergyman 2010-01-27 18:13:31
...沒關係,挖掘差異樹的選項這可能工作。 – bergyman 2010-01-27 18:18:09