2014-10-30 94 views
1

我修改了一個文件,並且我什麼時候不知道。我想看看我已經改變了那個文件的所有提交。基於這些提交,我想在其他文件中搜索與正在搜索的修改相關的其他修改。我試過git blame,但它似乎只是顯示最後一次提交和未提交的更改。誰能告訴我如何做到這一點?Git搜索一個文件已被修改的提交


更明確的:我在一個JSON文件搜索的修改和那些基礎的,我在我的應用程序代碼(CPP)的文件做了一些修改。所以我想搜索那些提交併查看我修改的代碼。 P.S .:我同時改變了json的結構,所以我不想只進行最後的修改。

+0

'git log --follow -p file' – perlsufi 2014-10-30 15:11:51

+1

可能重複[使用Git版本化查看文件的更改歷史記錄](http://stackoverflow.com/questions/278192/view-the-change-history-文件使用git版本) – Dettorer 2014-10-30 15:11:52

回答

2

要查看什麼和如何的提交更改了某些文件,您可以使用log命令-p開關:

git log -p somefile/somefile.cpp 
0

要找出誰更改了一個文件,您可以針對單個文件運行git blame,並逐行分析文件,並對最後一行進行更改。它還會打印出的時間戳和作者信息及link

1

你可以看到所有能影響一個特定的文件與提交:

git log -- <filename> 

如果你想看到用沿修改的其他文件文件,您可以使用--name-only選項。這將列出在該提交中修改的所有文件。

git log --name-only <filename> 
0

在日常工作中,我覺得這是最方便的:

gitk <some file or directory> 

這是很高興能夠快速過濾掉所有改變特定目錄內容的提交,特別是在更大的系統中。事實上,您可以通過點擊這些文件即時查看差異,至少可以以最快的方式獲得概覽。

+0

但我需要安裝它冷杉... – sop 2014-10-30 15:47:20

相關問題