我在特定的文件上試用git blame
。如果我理解正確,它會顯示對該文件所做的所有修改以及由誰執行。
但是,當我運行命令的結果不會有序地出現。我必須搜索條目以找出哪些是日期的最後更改。
報告結果的順序是什麼?我怎樣才能根據修改的順序得到報告?找不到git blame的報告
0
A
回答
6
git blame <filename>
顯示對於文件中的每個單獨的行,上次提交以更改該行。
要獲得觸摸文件的提交列表,請使用git log <filename>
,可能還有-p
也可以看到更改。
3
git blame
「使用上次修改該行的修訂版的信息在給定文件中註釋每行。」輸出按照文件中的行進行排序。這是一個典型的輸出:
b62460a4 base.scm (GoZoner 2011-01-11 17:44:21 -0800 1) ;-*- Mode: scheme -*-
b62460a4 base.scm (GoZoner 2011-01-11 17:44:21 -0800 2) ;
b62460a4 base.scm (GoZoner 2011-01-11 17:44:21 -0800 3) ; File: base.scm
b62460a4 base.scm (GoZoner 2011-01-11 17:44:21 -0800 4) ; Date: Tue Jan 11 2011
...
528c5424 base.scm (GoZoner 2012-04-21 10:01:14 -0700 26) ; ______________________________________________
b62460a4 base.scm (GoZoner 2011-01-11 17:44:21 -0800 27)
499ff1ef base.scm (GoZoner 2010-10-21 22:08:30 -0700 28) (library (quirk base)
d1376b80 base.scm (GoZoner 2011-01-01 16:31:00 -0800 29) (export ignore identity always compose complem
6150ec79 base.scm (GoZoner 2013-04-22 08:02:43 -0700 30) iota choose choose-by split substitute de
9fc800e6 base.scm (GoZoner 2010-10-28 07:36:01 -0700 31) any? every? count index while until repea
499ff1ef base.scm (GoZoner 2010-10-21 22:08:30 -0700 32) member? associate
93933128 base.scm (GoZoner 2010-10-22 01:03:43 -0700 33) intersection union difference
3e3f47ee base.scm (GoZoner 2010-11-20 15:59:38 -0800 34) list-ref-at list-set-at list-ref-last lis
3e3f47ee base.scm (GoZoner 2010-11-20 15:59:38 -0800 35) vector-ref-at vector-index
5eae93ea base.scm (GoZoner 2010-10-23 10:30:37 -0700 36) symbol-append
您可以看到:commit,filename,user,date,lineno和每行的內容。
如果你想要的東西按日期分組,你有兩個選擇:
git log -- <filename>
顯示按時間倒序 順序提交git show <commit> -- <filename>
顯示更改文件 一個指定的提交。
相關問題
- 1. 賈斯珀報告 - 找不到報告
- 2. Git blame -L bug?
- 3. Git blame承諾行
- 4. 告訴git-blame使用導入的歷史記錄
- 5. 的git fsck的報告「SHA1不匹配」
- 6. 在報告中找不到JBehave資源
- 7. Math.abs()報告錯誤:找不到符號
- 8. Jasper報告找不到包net.sf.jasperreports.engine
- 9. Git commit不會覆蓋git blame中的原作者
- 10. Git中的報告生成
- 11. Git的歷史報告
- 12. 混帳:`--full-history`爲`git的bisect`和blame`
- 13. git blame:合併後的正確作者
- 14. SourceTree中的git-blame在哪裏
- 15. 賈斯珀報告子報表路徑找不到
- 16. tuneup.js報告爲test()方法報告「無法找到變量」
- 17. git blame在解決合併衝突時
- 18. git-blame在smartgit上可用嗎?
- 19. 從文本框報告到另一個報告(不是子報告)的鏈接
- 20. Maven找不到git
- 21. 找不到git-cvsimport?
- 22. 對於當前分支中不存在的文件,git blame
- 23. Junit的報告不會生成報告
- 24. 碧玉報告 - 未找到資源
- 25. 賈斯珀報告:資源未找到
- 26. 如何找到總計在SSRS報告
- 27. 無法找到ACRA錯誤報告
- 28. WebResource報告404文件未找到
- 29. 賈斯珀報告HtmlComponent類未找到
- 30. iPhone崩潰報告沒有找到
我認爲每個提交都與多個文件有關。代表特定快照的文件。因此'git log'表明提交不能顯示單個文件的歷史記錄。因此,提交是文件的快照,但我們可以擁有單個文件的歷史記錄?我在這裏有意義嗎?我是Git – Cratylus
@Cratylus的新手如果你給'git log'指定一個文件名,它會忽略文件沒有被改變的提交。用'-p',它會過濾它所顯示的變化,這樣你就只能看到那個文件中發生了什麼變化。 整個歷史仍然存在,每個提交都與其所有文件相關聯;只有輸出限於單個文件的歷史記錄。 –