2011-10-11 28 views
0

我想要逐月同步到最近12個月的回購提交以便比較它們。到目前爲止,我有這樣的:如何同步到git回購(特定的日期,月份,秒)

for i in {12..1}; do

$(git rev-list --before "$(date -d "$(date +%Y-%m-01) -$i months" +%Y-%m)-01" -n 01 HEAD); done

這正好從當前時間(每月回來,所以如果我今天4:00運行它,它會先放棄我的承諾最接近4: 00 12個月前等)。

有沒有辦法讓git使用一個固定的時間值,這樣無論我什麼時候運行腳本,它都會每月回去並報告最接近12:00或者其他時間的提交?

謝謝!

+1

又名如何將混帳到ClearCase中 – jman

+0

對於它的價值,如果你使用標籤來標記顯著的里程碑(測試的,穩定的,任何適合你的項目),那麼你就必須真正地標回去,而不是在四個月前通過添加功能獲得一半的機會,或者更糟糕的是,剛剛破壞了構建。 – Cascabel

回答

1

以下是否做你想要的?

#!/bin/bash 

for i in {12..1} 
do 
    CURRENT_DATE=$(date +%Y-%m-%d) 
    PAST_DATE="$(date -d "$CURRENT_DATE - $i months" "+%Y-%m-%d 12:00:00")" 
    git rev-list --before "$PAST_DATE" -n 1 HEAD 
done 
相關問題