학습주제
학습내용
깃?
분산환경에서 동작하는 소스버전 컨트롤 시스템.
SVN,CVS는 서버를 중심으로 중앙개발 시스템이었음
5개까지 private 사용 (무료)
test, 이미지 워크플로우
트래킹 워크플로우 등
Repo: 깃으로 관리되는 소프트웨어 프로젝트
Master/Main: 리포에서 기본이 되는 메인 코드를 지칭. git에선 master, hub는 main
Branch: 리포에서 main 혹은 다른 Branch 로부터 만든 코드 작업본. 나중에 원본과 다시 병합
Clone: 다른 계정에 존재하는 리포로부터 새로운 로컬 리포를 만드는 것
Commit(Check-in): 내가 만든 코드 변경을 브랜치의 로컬리포에 반영하는 것
로컬 리포가 있고, 실제 버전은 remote repo 서버에 있음.
push - remote에 싱크
pull - 내쪽으로 가지고 옴.
리모트 리포는 마스터일수도 있고 작업을 위한 브랜치일 수도 있음.
코드간 충돌이 일어나면 merge를 거침.
주기적으로 master와 merge 하는게 좋음.
메인 마스터에 바로 merge는 잘 안함.
브랜치를 따로 만들고 변경을 만들어낸 다음. main과의 차이를 누군가 리뷰할 수 있게 하고 ok. 하면 그다음 merge
메인 마스터의 변경을 알기 쉬움.
그 때마다 CI/CD를 트리거할 수 있음.
actions는 특정 이벤트에 따라 조건, 이벤트를 만족하면 workflow를 실행.
다수의 workflow는 CI/CD를 트리거.