파크로그

사이드 프로젝트에 참여하게 되었다.

Git 형상관리를 하기로 했는데, Organizations에 member로 합류하게 되었는데, 어떻게 내 branch를 만들지?

 

1. Organizations에 있는 repository에 가서 주소를 복사, 개발을 시작하기 원하는 폴더 경로에 git clone을 한다.

 

terminal > git clone [URL]

 

1.1) git clone 은 아래의 명령들을 포함한 작업이다.

 

> git init

> git remote add origin [URL]

> git fetch origin master

 

경로에 있는 폴더를 빈 Git 저장소로 초기화(git init) 하며, 현재 Git 저장소에 프로젝트 원격 저장소(origin)를 추가한다

이 때 origin은 git clone으로 생성 시 default로 origin으로 생성되지만, 아래 순서대로 한다면 origin이 아닌 다른 이름으로 선언할 수 있다. 이후 원격 저장소의 master 브랜치 데이터를 로컬에 가져와 저장한다.

 

🤔) origin이 뭐에요?

: 뒤에 있는 긴 주소 [URL] 를 대신에서 짓는 대명사 라고 생각하면 된다.

 

🤔) 데이터를 가져오는건 pull 아닌가요?

 

fetch는 데이터를 로컬에 가져오기만 하고,

pull은 원격 저장소의 내용을 가져와 자동으로 병합(merge)작업을 한다.

 

고로, fetch 는 맨 처음 코드를 가져올 때, pull은 이후에 사용하는게 일반적이다.

로컬 데이터와 병합하고 싶지 않을 경우에도 fetch를 사용한다.

 

 

2. git branch 만들기.

 

초기에는 git branch 명령어로 확인하면 *master만 있을 것,

git branch -a 명령어로 원격, 로컬 저장소의 branch를 모두 확인할 수 있다.

 

> git checkout -b [Branch]

 

2.1) 위 git checkout -b [Branch] 명령어는

 

- git branch [이름] ( '이름' 이라는 이름의 branch 생성 )

- git checkout [이름] ( '이름' branch를 사용 )

 

명령어를 합친 것이다.

 

3. 생성한 branch를 origin에 push 하기

 

생성한 branch로 옮겼다면, 어떤 것이라도 변경한 후 커밋을 해보자.

 

> git commit -a -m "변경되었음"

> git push origin [Branch]

 

3.1 ) 위 git commit -a -m "변경되었음" 명령어는 

 

- git add .

- git commit -m "변경되었음"

 

명령어를 합친 것이다.

 

🤔) add . 은 뭐에요?

 

add는 변경한 파일중 어떤 것을 commit 에 추가할 지 설정해주는 명령어이다.

ex) index.js 파일을 수정했으면 git add index.js

 

그렇다면 뒤에 .은 변경이 생긴 모든 파일을 추가한다는 뜻 이다.

 

3.2) origin에 푸쉬하기..? 이거 큰일나는거 아닌가요?

 

아니다. master에 병합하는거 아니니 겁먹지말고 Do it

 

❗❗ ) 내가 겪은 Issue

 

아무리 시도해도 Repositoty not found 가 나오길래, 내가 user로 추가된게 아닌지 git config --global --list 로 확인해보니 등록은 되어 있는데 왜 안되는지, 싶었는데 Organizations 내에 권한(member로 설정) 문제였다.

 

owner로 설정하니 이상없이 push되었다.

 

4. 다른 branch와 merge하기.

 

merge하고자 하는 branch와 동일한 이름의 branch를 생성한 후 원격 저장소의 데이터를 pull 한다.

 

- git checkout -b [Other]

- git pull origin [Other]

 

여기서 Git 전략에 따라 갈리는데, git flow 전략에서는 dev라는 공통 branch를 생성해 이곳에 merge를 하여 이상여부를 체크한다.

 

- git checkout -b dev

- git merge [Branch]

- git merge [Other]

 

잘 돌아가면 master branch에 merge 후 배포하면 된다.

profile

파크로그

@파크park

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!