🌱 오늘의 주제 : Git submodule을 통한 application.yml 관리
🌱submodule 사용법
private repo 생성
application.yml과 같은 설정파일을 저장할 private repo를 github에 생성하고, 관리할 파일을 push 해둡니다.
project repo에 서브모듈 등록
등록은 어렵지 않습니다. 서브모듈을 등록할 project dir에서 아래의 git 명령어를 사용해주면 됩니다.
상위 디렉토리에 하위 디렉토리가 자동으로 추가됩니다.
git submodule add [서브 모듈로 등록할 github repository의 주소]
서브모듈의 변경사항을 상위 레포지토리에 가져오기
git submodule update --remote
build.gradle 편집
빌드시에 등록해둔 submodule을 알맞은 경로에 위치시킬 수 있도록 build.gradle을 아래와 같이 편집해 줍니다.
생성된 파일이 git에 올라가지 않도록 gitignore을 해줍니다.
task copyPrivate(type: Copy) {
copy {
from './[서브모듈 repo 이름]'
include "*.yml"
into 'src/main/resources'
}
}
- task : gradle의 작업 단위를 선언하는 부분
- copy : gradle에서 제공하는 파일 복사 API
- from : 가져오고 싶은 파일의 위치 작성
- include : 가져올 파일 지정 (현재는 yml 파일을 모두 가져오도록 지정됨)
- into : 가져온 파일을 위치시킬 곳 지정
.gradle 편집 GIthub Action에서 서브모듈에 있는 yml파일 사용
서브 모듈에 접근할 수 있는 권한을 가진 사용자의 토큰을 github action secret에 명시해두어야 하며, submodule을 사용한다는 의미로 submodules: true로 설정해어야 합니다.
- uses: actions/checkout@v3
with:
token: ${{ secrets.TOKEN }}
submodules: true
* 참고
'Git' 카테고리의 다른 글
Sourcetree를 이용한 Git 정리 (0) | 2024.11.10 |
---|---|
Git - 명령어 정리 (0) | 2023.10.19 |
Git - gitignore 규칙 (0) | 2023.08.25 |
Git - git의 working flow (0) | 2023.08.17 |
Github - label 의미 (2) | 2023.05.06 |