2011-10-19 5 views
0

私はプログラムCを書いていて、ソースをgitで追跡しています。make on git

メイクファイルを実行するたびにビルドをコミットする必要があります。私は私の日のコメントで私のGitのレポにMYPROGRAMをコミットする方法を (はい、私はこれを行うには理想的なものや「スマート」なアイデアではありません知っているが、私は学校のためにこれをしなければならない。)

ファイルを作る? 代わりにシェルスクリプトを使うべきですか?

は、ここでは、あなたの質問に認めるよう、これは、意味がありませんやっている方法の多くがあります

BUILDID=$(shell date +%Y%m%d-%H:%M:%S) 
CFLAGS=-Wall -g 

all: myprogram 

clean: 
    rm -f *.o 
    rm -f myprogram 

答えて

1

以下の私のMakefileです。

.PHONY: all commit 

BUILDID=$(shell date +%Y%m%d-%H:%M:%S) 
CFLAGS=-Wall -g 

all: myprogram commit 

commit: 
    git add -A . 
    git commit -m 'Automatic commit of successful build $(BUILDID)' 

clean: 
    rm -f *.o 
    rm -f myprogram 

.PHONYはGNUが特定作りで、意味:しかし、何がしたいことは、あなたのgitリポジトリは、(離れて無視されたファイルからの)作業ツリー内のすべての変更を反映させるためにであると仮定すると、次のことを行うことができますその依存関係は実際のターゲットではありません)。

+0

Mark、それは学校のプロジェクト用です。コードを追跡しているにもかかわらずビルドファイルを追跡している理由が分かりませんが、狂気の理由があります。 – gaelanadams