2016-11-17 5 views
1

gitリポジトリにfile1.txtがあるとします。このファイルにテキスト行:an old line of textがあるとします。Gitを使ってファイル内のテキストの長さを把握する

git(またはその他のUnixユーティリティ)を使って、この行のテキストがこのファイルに何日保存されているか把握する方法はありますか?

+0

'git blame - 'は、どのコミット、whoおよびwhen lineが導入されたかを表示します。 –

答えて

1

あなたは、その文字列を導入コミットの日付になります

datefrom=$(git log --pretty=format:'%cd' --date=format:'%Y-%m-%d' -S 'line to find' -- file1.txt) 

を使用することができます。

  • ログ検索が
  • -Sオプションは、文字列
  • --pretty =フォーマットの最初の導入を見つけた歴史をコミット: '%広告は、' コミッター日
  • --date =形式は明らかに日付をフォーマット出力しますこのことから今

https://unix.stackexchange.com/questions/215934/whats-a-smart-way-to-count-the-number-of-days-since-xあなたが得る:

echo $(((`date +%s` - `date +%s -d $(datefrom)`)/86400)) 

これはコミットを導入してからの日数をもたらします。

ofcourseのあなたは、1つのコマンドですべてをかけると、 をエイリアスを作るかはgit-コマンド名のスクリプトを作成し、ユーザー/ binフォルダにそれを入れて、Gitはあなたが

で呼び出すことができるのgitコマンドとして認識されますすることができますすることができます
git command-name 'line to find'  
関連する問題