GitのMakefileを追加
[makefiles.git] / git / gitremote.mk
1 CD := cd
2 ECHO := echo
3 GIT := git
4 LS := ls
5 MKDIR := mkdir
6 SSH := ssh
7
8 SERVER := www.j8takagi.net
9 REPOSDIR := /home/git
10
11 PROJECTNAME := $(notdir $(CURDIR))
12 REPOSNAME := $(PROJECTNAME).git
13 REPOS := $(REPOSDIR)/$(REPOSNAME)
14 SERVERREPOS := $(SERVER):$(REPOS)
15
16 REPOSEXT := $(strip $(shell $(SSH) $(SERVER) $(LS) -d $(REPOS) || $(ECHO)))
17 GITORIGIN := $(strip $(shell $(GIT) remote | grep origin))
18
19 .PHONY: gitorigin-add gitorigin-show gitpush gitorigin-clean gitrepos
20
21 gitpush: gitorigin
22         $(GIT) push --set-upstream origin master
23
24 gitorigin: gitrepos
25         $(if $(GITORIGIN),@($(ECHO) 'remote origin exists. git remote set-url origin <url>'),$(GIT) remote add origin $(SERVERREPOS))
26
27 gitrepos:
28         $(if $(REPOSEXT),,$(SSH) $(SERVER) '$(MKDIR) $(REPOSDIR)/$(REPOSNAME) && $(CD) $(REPOS) && $(GIT) init --bare')
29
30 gitorigin-clean:
31         $(GIT) remote remove origin