git submodule 생성 방법, 민감한 정보 숨기기 (yml 파일)

2024. 4. 9. 18:20·코딩/Git

Github에서 .yml 파일 같은 민감한 정보를 숨기기 위해 git submodule을 사용할 수 있다.

 

1.  public repository 생성

만약 yml 같은 민감 정보를 이미 업로드했다면, 삭제해줘야한다.

 

2. 민감한 정보를 담을 private repository 생성

여기서 New repostiory 클릭

Private로 만들고 Create repository 버튼 클릭

여기서 Create new file 클릭

yml 파일 업로드.

 

그럼 이렇게 만들어진다.

 

3. public repository에 submodule 등록

먼저, submodule repository의 주소를 복사한다 Code  클릭 > HTTPS 에서 복사 아이콘 클릭

 

git submodule add ${서브 모듈로 등록할 github repository 주소}

이렇게 메인 프로젝트에 submodule을 등록한다.

 

 

그럼 이렇게 submodule이 생긴 것을 잘 확인할 수 있다.

 

 

 

4. gitmodules 확인

프로젝트의 최상위 폴더에 .gitmodules 파일이 생성된 것을 확인할 수 있다.

메인 프로젝트를 github로 push 시, 아래와 같이 main 프로젝트에 submodule이 생성된다.

 

 

 

4. submodule 파일 수정 시

만약 submodule 파일이 수정되었다면,

git submodule update --remote 명령어로 최신 내용을 업데이트할 수 있다.

 

5. gradle을 submodules의 내용을 빌드 시 가져오기

submodule 폴더에 있는 yml파일을 빌드 시에 src/main/resources 경로로 가져오게 하는 작업이 필요하다.

build.gradle에 아래 코드를 추가한다.

task copyPrivate(type: Copy) {
    copy {
        from './pettopia-back-submodule'
        include "*.yml"
        into 'src/main/resources'
    }
}

저기서 from '' 안에 들어가는 이름은 본인의 submodule의 폴더를 지칭하고, include는 포함할 파일, into는 빌드 시 넣을 경로를 지칭한다.

 

실행했을 때, 테이블이 잘 생성되는 것을 확인할 수 있다!

저작자표시 비영리 변경금지 (새창열림)

'코딩 > Git' 카테고리의 다른 글

github 협업, github organization, 그룹 협업 방법 (상세히 설명)  (0) 2024.05.16
'코딩/Git' 카테고리의 다른 글
  • github 협업, github organization, 그룹 협업 방법 (상세히 설명)
eunslog
eunslog
코딩 잘하는 개발자가 꿈입니다. 꾸준히 열심히 코딩공부를 하고 있습니다.
  • eunslog
    오늘도 코딩
    eunslog
  • 전체
    오늘
    어제
    • 분류 전체보기 (93)
      • 일상 (0)
      • 코딩 (31)
        • Spring (1)
        • Database (3)
        • Server (8)
        • Error (11)
        • Git (2)
        • NodeJS (0)
      • SQL (0)
      • 수업 (34)
      • IT 관련 (7)
      • 자격증 (11)
      • 멘토링 (9)
      • 그외 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • github 주소
  • 공지사항

  • 인기 글

  • 태그

    androidStudio
    AWS 서버
    멋쟁이사자처럼
    코틀린
    안드로이드스튜디오
    멋사
    Kotlin
    html
    자바 기초
    멋사 11기
    안드로이드 스튜디오
    자바
    멋쟁이사자처럼 11기
    java 기초
    웹프로그래밍
    Android Studio
    CSS
    컴퓨터그래픽스
    모바일프로그래밍
    java
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
eunslog
git submodule 생성 방법, 민감한 정보 숨기기 (yml 파일)
상단으로

티스토리툴바