2014-03-19 54 views
1

我試圖找到命令以獲取本地git repo中文件的最後修改日期。獲取git repo中文件的最後修改數據

創建了回購並完成了一次提交。必須編輯一個文件並提交此文件,但想知道回購中文件的最後修改數據是什麼(不是提交日期)。

沒有gui onl命令行。

git log ./path/to/filename.php 

只給我提交日期

+0

Git用於blob而不是文件。每個提交對應一個blob,並且可以包含許多文件,所有這些都是以原子方式創建的。 Git日誌應該爲您提供文件的完整日誌,最早的日期是Git中的文件創建日期。 – hd1

+0

「ls -l」會不會做詭計? –

+0

@PaulHicks不,我只是修改了文件。我想知道git倉庫中文件的最後修改日期。不git維護文件及其屬性的版本? (如最後的mod日期?)。也許它不會。 – HMR

回答

1

Git不會記錄最後修改日期,只對所有提交的提交/作者日期(可以包括多個文件)。

您需要運行腳本才能修改特定文件上次修改日期的提交(如果提交中有多個文件,則不是很有用)。
請參閱「Git: Change timestamp after pushing」的示例。

另一種選擇是將這些時間戳記錄在一個單獨的文件中,並修改您的提交方式:請參閱「What's the equivalent of use-commit-times for git?」。

這包括:

  1. mtimestore - 核心腳本提供3個選項:
    • -a(保存所有 - 在已有的回購協議(初始化與GIT精通文件作品)),
    • -s(以保存分段更改)和
    • -r來恢復它們。
  2. pre-commit鉤子
  3. 結賬後鉤

順便說一句,這就是爲什麼the post where I explained 5 years ago混帳不記錄時間戳。

+0

謝謝你的回答。我會從這裏開始檢查最後的更改日期。如果我做'git add .',然後'git status',我會得到自上次提交後所有文件的更改。 – HMR

相關問題