본문 바로가기

728x90

깃허브

[Git] 브랜치 전략 - Git Flow /* 브랜치 전략 */ 협업 프로젝트를 하기 위해서는 브랜치 전략을 설정하는 것이 매우 중요하다. 충돌을 조기에 발견하고 해결할 수도 있고 버전 관리, 롤백 같은 작업을 편리하게 한다. /* Git Flow */ Git Flow 브랜치 전략은 릴리즈 버전 관리를 간편화하는데 용이하다. 위의 그림을 보면 5가지의 브랜치가 보인다. (회사마다 상이할 수 있음) feature, develop, release, hotfixes, master /* master (main) 브랜치 */ master 브랜치는 릴리즈 될 프로덕션을 포함하는 브랜치이다. 그림의 Tag (번호)는 버전 정보이다. master 브랜치는 안정화된 기능에 대해서만 배포가 이루어져야 한다. /* develop 브랜치 */ 말 그대로 개발을 위한.. 더보기
[Git] branch merge 전략 /* Merge 종류 */ PR을 올리고 담당자는 merge를 어떤 식으로 할 지 결정을 해야 한다. 사진에서 처럼 Github에서는 3가지의 Merge 전략이 있다. Merge Commit Squash and merge Rebase and merge /* Merge Commit*/ 일반적으로 많이 사용되는 merge 전략이다. 예시를 보면 feature 브랜치를 main 브랜치에 merge하고자 할 때 Git은 자동으로 새로운 merge commit을 생성합니다. merge commit은 두 브랜치의 변경 사항을 포함합니다. 따라서 두 브랜치 사이에는 충돌이 없어야 합니다. 해당 merge 전략의 장점은 두 브랜치의 history를 보존하고 조회할 수 있습니다. /* Squash And Merge*/.. 더보기
[Git] Github Actions - CI 작성 /* CI 란? */ CI = Continous Integration = 지속적인 통합 개발 과정에서 코드 변경 사항을 지속적으로 통합한다. 풀어 쓰자면, Git 저장소에 코드가 push 되면 CI 도구가 코드를 자동으로 가져와 CI Server안에서 빌드를 하고 테스트를 수행한다. 이 과정에서 사전에 버그를 발견할 수 있다는 이점이 있다. 하지만, CI만 설정할 경우 자동으로 내가 설정한 웹사이트에 반영이되어 배포가 되는 것은 아니다. 이해관해서는 CD = Continous Deployement (지속적 배포) 과정이 시작되어야 한다. /* Github Actions */ CI 세팅을 위해서는 여러가지 방법이 있는데, Github Actions를 택했다. 방법은 다음과 같다. 루트 디렉토리에 .git.. 더보기
[Git] 깃 정리 #1 /* 용어 정리 */ Committed : 데이터가 로컬 데이터베이스에 안전하게 저장 Modified : 수정한 파일을 아직 로컬 데이터베이스에 커밋 안함 Staged : 현재 수정한 파일을 곧 커밋할 것이라고 표시한 상태 Tracked : 파일이 깃의 관리 하에 있는지 아닌지의 여부 Git 디렉토리 : Clone 한 것 워킹 트리 : 특정 버전의 checkout Staging Area : 곧 커밋할 파일 /* Git */ $ git status : 파일의 상태 확인 $ git diff : 수정했지만 아직 staged상태가 아닌 파일 (git add 를 안한 파일) $ git diff --staged : Staging Area에 넣은 파일의 변경 부분 조회 $ git rm "a.txt" : 삭제한 파일은.. 더보기
[Github] git branch - command에서 가져오기, 병합하기, 삭제하기 협업프로젝트를 할때는 branch를 두개이상하는 것은 필수라고 생각합니다. 이때 원격 브랜치를 다루어야 하는 경우가 생깁니다. command를 통해서 git branch를 다뤄보는 법을 알아보도록 하겠습니다. 원격 저장소 branch 리스트 갱신 git remote bash 원격 저장소 branch 리스트 확인 git branch -r 리스트를 확인할 수 있습니다. 리스트를 확인했으면 :q 를 입력하면 command 화면으로 돌아갈 수 있습니다 branch 변경 git checkout -t ewan 위 같은 경우에는 ewan 이라는 branch를 이용한다는 것을 의미합니다. branch 마스터로 돌아오기 git checkout master ewan을 master에 병합하기 git merge ewan 더보기

728x90