2017-04-02 67 views
0

我是Git的新手。我用Java開發了一個應用程序。應用程序在執行過程中將每個信息記錄在文本文件中。我已經提交了使用Git的應用程序。現在我想在日誌文件中打印最新的Git提交哈希值。如何在Eclipse中記錄最新的git commit hash?

例如爲:內部mysteps.log文件:

記錄的

開始......

enter image description here

請指導我如何實現這一目標?在此先感謝.. :)

回答

0
Runtime runtime = Runtime.getRuntime(); 
Process process = runtime.exec("git rev-parse HEAD"); 
try (BufferedReader reader = new BufferedReader(
     new InputStreamReader(process.getInputStream()) 
)) { 
    String revision = reader.readLine(); 
    // log the revision here 
} 

注意:請勿在生產中使用此代碼。它依賴於環境,這意味着如果未安裝Git或上下文不在git存儲庫中,則會失敗。

爲了能夠在生產中使用它,您必須將修訂版本修補到您的工件中(例如,轉換爲jar存檔文件)。通常它是由構建系統(例如gradle,maven,ant)自動構建的一部分完成的。例如,在Maven構建期間,您可以使用git-hash創建新文件並將其打包到jar中,然後在運行時您可以隨時讀取文件。