2014-02-28 44 views

回答

1

您可以這樣做:將其添加到all目標,以便它每次都運行,並將其聲明爲.PHONY,以便make不會嘗試將其與現有文件關聯。

all: update-build-number 

.PHONY: update-build-number 
update-build-number: 
    $(srcdir)/my_increment_script 
+0

感謝此。開始了我的追求,讓我看到下面的代碼。 – adrianwadey

0

這可能是有用的人試圖做版本控制使用Git和自動化他們的版本編號

這裏是我的電話號碼生成器:

#!/bin/sh 
#echo "Test version of version_script runs OK!" 
    majorversion=1 
    #echo "Commits" 
    #git rev-list HEAD 
    lastmerge=`git rev-list --merges HEAD | head -n1` 
    #echo "Last Merge" 
    #echo $lastmerge 
    #echo "Merges (Sub version)" 
    #git rev-list --merges HEAD 
    subvn=`git rev-list --merges HEAD | wc -l` 
    #echo $subvn 
    #echo "Commits+1 since last merge (Sub sub version)" 
    subsubvn=`git rev-list HEAD | grep -B99999 -e$lastmerge - | wc -l` 
    #echo $subsubvn 
    #echo "No merges" 
    #git rev-list --no-merges HEAD 
    #git rev-list --no-merges HEAD | wc -l 
    #echo $majorversion.$subvn.$subsubvn > versionnumfile 
    echo $majorversion.$subvn.$sub 

主要版本是硬編碼(在時刻),子版本是合併次數,子版本是自上次合併以來提交次數(+1)