auto commit

This commit is contained in:
bangdk 2024-11-09 09:24:54 +09:00
parent a7e8c17961
commit d88c3b3114

View File

@ -4,87 +4,57 @@ git add .
git commit -am "auto commit"
current_branch=$(git branch --show-current)
git push origin $current_branch
# 마스터 브랜치와 병합 여부 확인
echo "You are currently on branch: $current_branch"
echo "Would you like to merge the current branch with master? (Y/N) [Y]"
# 10초 타이머 설정
TIMEOUT=10
REPLY=""
# 카운트다운 타이머와 함께 입력 받기
read -t $TIMEOUT REPLY & # 백그라운드에서 read 실행
read_pid=$! # read 프로세스의 PID 저장
while [ $TIMEOUT -gt 0 ] && ps -p $read_pid > /dev/null; do
echo -ne "\rWaiting for input... ($TIMEOUT seconds remaining)"
sleep 1
((TIMEOUT--))
done
# 남은 read 프로세스 정리
if ps -p $read_pid > /dev/null; then
kill $read_pid 2>/dev/null
fi
echo # 새 줄 추가
# 입력이 없으면 Y로 설정
proceed_merge=${REPLY:-Y}
echo "Selected option: $proceed_merge"
read proceed_merge
proceed_merge=${proceed_merge:-Y}
if [ "$proceed_merge" == "Y" ] || [ "$proceed_merge" == "y" ]; then
# 마스터 브랜치로 전환 및 업데이트
git checkout master
git pull origin master
# 현재 브랜치를 마스터에 병합
git merge --no-edit $current_branch
# 병합 결과 푸시
git push origin master
# 원래 브랜치로 돌아가기
git checkout $current_branch
# 마스터 브랜치로 전환 및 업데이트
git checkout master
git pull origin master
# 현재 브랜치를 마스터에 병합
git merge --no-edit $current_branch
# 병합 결과 푸시
git push origin master
# 원래 브랜치로 돌아가기
git checkout $current_branch
fi
# 새로운 브랜치 생성
# 현재 날짜를 YYYYMMDD 형식으로 가져오기
current_date=$(date +'%Y%m%d')
# 브랜치 이름에서 날짜 부분 추출
branch_date=${current_branch:1:8}
# 현재 날짜와 브랜치 날짜가 같으면 뒤의 2자리 숫자를 증가시킴
if [ "$branch_date" == "$current_date" ]; then
# 브랜치 이름에서 뒤의 2자리 숫자 추출
branch_number=${current_branch:9:2}
# 숫자를 10진수로 변환하고 1 증가시킴
branch_number=$((10#$branch_number + 1))
# 브랜치 이름에서 뒤의 2자리 숫자 추출
branch_number=${current_branch:9:2}
# 숫자를 10진수로 변환하고 1 증가시킴
branch_number=$((10#$branch_number + 1))
else
# 날짜가 다르면 01부터 시작
branch_number=1
# 날짜가 다르면 01부터 시작
branch_number=1
fi
# 사용 가능한 브랜치 이름 찾기
while true; do
# 2자리 숫자로 포맷팅
formatted_number=$(printf "%02d" $branch_number)
new_branch="V${current_date}${formatted_number}"
# 로컬과 원격에 해당 이름의 브랜치가 존재하는지 확인
if ! git show-ref --quiet refs/heads/$new_branch &&
! git ls-remote --exit-code --heads origin $new_branch > /dev/null 2>&1; then
break
fi
# 존재한다면 숫자 증가
branch_number=$((branch_number + 1))
done
# 2자리 숫자로 포맷팅
formatted_number=$(printf "%02d" $branch_number)
new_branch="V${current_date}${formatted_number}"
# 로컬과 원격에 해당 이름의 브랜치가 존재하는지 확인
if ! git show-ref --quiet refs/heads/$new_branch &&
! git ls-remote --exit-code --heads origin $new_branch > /dev/null 2>&1; then
break
fi
# 존재한다면 숫자 증가
branch_number=$((branch_number + 1))
done
# 새로운 브랜치 생성
git checkout -b $new_branch
# 새로운 브랜치 푸시
# 새로운 브랜치 푸시 (원격 브랜치로 푸시하려면 git push origin $new_branch 실행)
git push origin $new_branch
# 변경 사항 확인
git status
git status
# .env-dev 파일을 .env로 복사하여 원래 상태로 복원
# docker-compose -f docker-compose-dev.yml up -d --build