//////
Search
🗒️

백승근

날짜
2022/10/04
작성자
백승근
카테고리
회고

Branch?

소프트웨어를 개발할 때에 개발자들은 동일한 소스코드를 함께 공유하고 다룬다. 동일한 소스코드 위에서 어떤 개발자는 버그를 수정하기도 하고 또 다른 개발자는 새로운 기능을 만들어 내기도 한다. 이와 같이 여러 사람이 동일한 소스코드를 기반으로 서로 다른 작업을 할 때에는 각각 서로 다른 버전의 코드가 만들어 질 수 밖에 없다.
브랜치는 개발자들이 동시에 다양한 작업을 할 수 있게 하는 기능이다
각자 독립적인 저장소에서 마음대로 소스코드를 변경할 수 있다
분리된 작업 영역에서 변경된 내용은 나중에 원래의 버전과 비교해서 하나의 버전으로 만들어 낼 수 있다.

1. Master Branch

저장소를 처음 만들면 생기는 브랜치
제품으로 출시될 수 있는 브랜치
배포 가능한 상태만을 관리
== Main branch

2. Develop branch

기능 개발을 위한 브랜치들을 병합하기 위해 사용하는 브랜치
기능이 추가되고 버그가 수정되면 master 브랜치에 병합(merge)한다.

3. Feature branch

기능을 개발하는 브랜치
새로운 기능 개발 및 버그 수정이 필요할 때 develop 브랜치로 부터 분기한다.
개발이 완료되면 develop 브랜치로 병합(merge)
공유할 필요가 없기 때문에 자신의 로컬저장소에서 관리한다.

4. Release branch

이번 출시 버전을 준비하는 브랜치
출시를 위한 최종적인 버그 수정등의 개발을 수행
develop 브랜치에서 분기되며 develop,master 브랜치로 병합(merge)

5. Hotfix branch

배포한 버전에 긴급하게 수정을 해야 할 때 사용하는 브랜치
master 브랜치에서 분기
develop,master 브랜치로 병합 (merge)

커밋과정에서 주의 할 점

.gitignore을 사용해야 하는 이유
파일 백업 정보, 제품 빌드 정보등의 로컬 구성을 원격저장소에 올리지 않기 위해
데이터 충돌, 불필요한 접근을 막기위해
불필요한 파일을 같이 올리지 않기 위해

회고

-메소드 추상화

반복되는 코드를 줄이기 위해
/* if ( firstNum % 2 ==0 ){ System.out.print("짝수"); } else { System.out.print("홀수"); } System.out.print("+"); if ( secondNum % 2 ==0 ){ System.out.print("짝수"); } else { System.out.print("홀수"); } System.out.print("="); if(resultNum % 2 == 0 ){ System.out.print("짝수"); } else{ System.out.print("홀수"); */ public static String getEvenOdd(int num) { //메소드 추상화 - 중복 제거 !!! //숫자를 받아서 짝수 홀수 리턴 if ( num % 2 ==0 ){ return "짝수"; } else { return "홀수"; } }
Java
복사