git

yml 파일 관리

잔망루피 2023. 4. 24. 23:05

yml 또는 properties 파일에 민감한 정보가 있을 때 깃허브에 private 저장소를 만들어서 가져와 사용하는 방법이다.

 

 

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

먼저 private repo를 생성하고 yml 파일을 넣은 후에 위 명령어를 public repo에서 실행

public repo가 private repo를 서브 모듈로 사용할 저장소

public repo에서 서브 모듈을 사용하기 위해 실행한다.

 

git submodule update --remote

서브 모듈이 변경되면, public repo에서 submodule을 갱신

서브 모듈을 변경할 때마다 서브모듈을 사용하는 프로젝트에서 이 명령을 쳐야한다.

깃허브에도 push해서 반영해주는 거 잊지말자!!!

 

 

✅ 서브 모듈 생성 check

  1. public repo에 서브 모듈이 생성됨
  2. .gitmodules 파일이 생성

3. 원격 repo에 push하면 반영(권한이 없는 유저는 이곳에 접근이 안 된다.)

위의 세 가지를 확인했으면 성공🥳🥳

 

 

🟠 서브 모듈에 있는 yml 파일들을 빌드 시에 가져오기

  • build.gradle에 코드를 추가한다.
task copyPrivate(type: Copy) {
	copy {
    	from {서브모듈명}	// ''로 감싸기 ex) from 'Auth-service-sub'
        include "*.yml"
        into 'src/main/resources'	// 빌드 시에 넣을 경로
    	}
}

 

 

🦈 submodule을 가져왔는데 텅 비어있다면?

  • 아래 두 명령어를 순서대로 실행한다.
  • 해당 submodule 레포지토리에 초대가 되어있어야 같은 팀원이 사용 가능하다.
git submodule init

 

git submodule update

 

 

📀 submodule 삭제

  • submodule 폴더를 삭제했다.
  • .git/modules에 있는 서브모듈 삭제
  • git submodule deinit -f {서브모듈명}
  • git rm -f {서브모듈명}
  • .gitmodules에 해당 서브모듈이 있으면 삭제

 

 

🌈 submodule 복사하기

  • cd back으로 이동한 다음에 git submodule add {주소}를 해서 서브모듈을 받아왔다.
  • back 밖에 있는 경로에 있는 mooding_back_submodule 서브모듈을 못 가져와서 이 방법을 썼다.

 


참고 👇

https://dkswnkk.tistory.com/578

 

[GitHub] submodule 사용해서 yml과 같은 민감한 정보 숨기기

서론 보통 프로젝트를 진행하다 보면 GitHub 상에서 보여주고 싶지 않은 민감한 정보들이 있습니다. Spring Boot로 프로젝트를 진행할 때 DB의 계정 등을 담을 .yml파일들을 예로 들 수 있습니다. 프로

dkswnkk.tistory.com

 

https://git-scm.com/book/ko/v2/Git-%EB%8F%84%EA%B5%AC-%EC%84%9C%EB%B8%8C%EB%AA%A8%EB%93%88

 

Git - 서브모듈

gitmodules 파일에 있는 URL은 조건에 맞는 사람이면 누구든지 Clone 하고 Fetch 할 수 있도록 접근할 수 있어야 한다. 예를 들어 다른 사람이 Pull을 하는 URL과 라이브러리의 작업을 Push 하는 URL이 서로

git-scm.com

 

반응형

'git' 카테고리의 다른 글

Github Actions를 이용한 CI/CD  (0) 2023.04.26
remote: Write access to repository not granted.  (0) 2023.04.26
[Git] fork  (0) 2023.04.01
Please commit your changes or stash them before you switch branches.Aborting  (0) 2023.02.26
Git ^M 문자 제거  (0) 2023.01.27