상세 컨텐츠

본문 제목

Android repo 에서 특정 tag 로 변경하는 방법

Study/GIT

by 휀스 2012. 10. 11. 12:47

본문


Android 에서 repo 의 모든 git 을 특정 tag 로 변경하고 싶을 때 사용하는 명령어.


repo forall -c git reset --hard $get_tag


아래의


스크립트는 Tag 에서 특정 단어로 된 것 중 n 번째 tag 로 repo 를 변경하는 스크립트이다.

모뎀쪽에 항상 Tag 가 그어져서 Modem git 의 Tag를 참조 하도록 했다.


파일 이름은 getlasttag.sh 로 해서 저장했을 경우이다.


#!/bin/bash


# start repo sync

function startRepo() {

Stime=`date +%s` 

repo forall -c git reset --hard $get_tag

Etime=`date +%s` 


elapsed=`echo "$Etime - $Stime" | bc`

echo "Elapsed Time : $elapsed seconds."

exit

}

#end repo sync


if [ "$1" == "" ]

then

echo ""

echo " Usage : getlasttag.sh TagName [TagNumber]"

echo " TagNumber is numbering from bottom. (latest is '1')"

echo " ex) getlasttag.sh 태그이름 1     => get latest tag"

echo ""

else

cd ~/git/$1

if [ "$2" == "" ]

then

git --git-dir=./modem/.git tag | grep 태그이름

echo "Input tag number from bottom : "

read tag_num

get_tag=`git --git-dir=./modem/.git tag | grep 태그이름 | tail -n $tag_num | head -n 1`


echo "$get_tag is right? (y/n)"

read isGo

if [ "$isGo" = "y" ]

then

startRepo

else

echo "Please try again !"

exit

fi

else

if [ $2 -lt 1 ]

then

echo "Wrong number !!"

else

get_tag=`git --git-dir=./modem/.git tag| grep 태그이름 | tail -n $2 | head -n 1`

echo $get_tag

startRepo

fi

fi

fi

exit


GIT 은 서버에 안 붙어도 history 관리가 되니까 좋다. ^^



관련글 더보기