인프런 커뮤니티 질문&답변

yso829612님의 프로필 이미지

작성한 질문수

비전공자도 이해할 수 있는 CI/CD 입문·실전

[실습] .gitignore에 추가된 application.yml을 CI/CD로 관리하기

gitignore 및 branch에 대한 질문

해결된 질문

24.08.09 20:42 작성

·

90

0

강의를 들으면서 궁금증이 생겼습니다.

  1. gitignore에 설정된 파일은 깃허브에만 노출되지 않는것인지, 아니면 git clone으로 프로젝트 다운 시에는 폴더 안에 존재하는지 궁금합니다.

  2. 만약 clone으로 다운 시 존재하지 않는다면 다른 사람이 제 프로젝트를 clone 하더라도 로컬에서 제대로 돌아가지 않는 게 제 생각인데 맞을까요?

  3. ec2에서 현재 프로젝트에 여러 branch가 있을 때, 그 중에서 어떤 branch의 코드를 사용할지는 어떻게 정해지는지 궁금합니다.

답변 1

0

JSCODE 박재성님의 프로필 이미지
JSCODE 박재성
지식공유자

2024. 08. 10. 09:41

안녕하세요 yso829612님! 좋은 질문 해주셨네요:)

 

  1. gitignore에 설정된 파일은 깃허브에도 노출되지 않고,
    git clone으로 프로젝트 다운을 하더라도 노출이 되지 않습니다.

 

  1. 다른 사람이 clone으로 다운 받으면 gitignore에 포함된 파일이 다운받아지지 않기 때문에
    정상적으로 작동하지 않을거에요! 그러다보니 gitignore에 추가된 파일은 별도로 전달해주어야 합니다.

 

  1. 브랜치를 나누는 방법은 다양한데 git-flow 전략에 따르면
    크게 main, develop, feature 브랜치가 있습니다.
    main을 배포용 EC2에서 사용하는 편이고, develop을 개발용 EC2에서 사용하는 편이고,
    feature를 로컬에서 개발하는 편입니다!

     


    하지만 이건 엄격하게 지켜야 하는 전략이 아니기 때문에
    자신이 처한 상황에 맞게 EC2에서 어떤 브랜치를 사용할 건지 결정하시면 됩니다^^



    이 외로 궁금하신 점 있으시면 또 질문 남겨주세요~~

     

yso829612님의 프로필 이미지
yso829612
질문자

2024. 08. 11. 20:53

3번에 대한 추가질문 있습니다.

main, develop, feature 브랜치가 있을 때 만약에 develop 브랜치를 ec2에서 사용하고 싶으면 설정을 어떻게 해줘야하는 건가요?
제 생각에는 마지막 커밋 후 푸쉬한 브랜치가 지정되거나 아니면 깃허브에서 default 브랜치로 지정한 게 사용되는거 같은데 뭐가 맞는 건가요?

JSCODE 박재성님의 프로필 이미지
JSCODE 박재성
지식공유자

2024. 08. 13. 11:46

CI/CD 코드에 따라서 어떻게 설정해야 하는 지가 조금 달라집니다!

대략적으로 말로도 설명 한 번 드릴게요!

ec2에 들어가셔서 git checkout develop이라는 명령어로 브랜치를 바꿔줍니다.

그럼과 동시에 github actions 파일에서 develop 브랜치에 push가 될 때 작동되도록 코드를 수정해줍니다.

on:
  push:
    branches:
      - develop

...

이 방법을 통해서 ec2에서 develop 브랜치를 사용할 수 있게 됩니다~!!