<Branch란?>

" 같은 폴더 다른 세상" 

- branch에서 뭘하든 master에는 적용이 되지 않음

- 분할된 작업을 진행할 수 있음! 

- 즉, Git을 쓰는 이유가 됨

 

1. Branch 생성

git checkout -b (branch 이름)
# git checkout -b fix-mnist

- 작업의 명칭으로 branch 생성해주는 것이 좋음

 

2. 폴더 생성 및 수정작업

hello.txt를 만들고 commit 해보면.. 

3. 브랜치를 master branch로 변경하고 확인해보면

- hello.txt는 없는 것을 확인할 수 있음

 

4. 브랜치 삭제 

- master 브랜치에서 진행

git branch -D fix-mnist

 

< Branch에서 소스파일 수정하고 확인하기 >

1. 브랜치 생성

2. 수정할 파일 확인 

3. 원하는 편집기(vim, emacs, nano, 등으로 파일 수정하기

- nano로 실습

nano mnist/main.py

- 수정

- mac에서 nano 편집기 사용법

(1) 저장하기 : control + o

(2) 나가기 : control + x

 

4. 소스 파일 수정한 내용 확인하기 

git diff

5. commit 할 준비

(1) git status 명령어를 통해 "not staged" 확인

(2) git add 명령어 실행 

git add mnist/main.py

(참고) add 취소

git reset

6. commit하기 

git commit -m "수정한 내용"

7. git show 명령어를 통해 commit이 잘 되었는지 확인 

8. git status 명령어를 통해 현재 소스파일 상태 확인하기

- "nothing to commit, working tree clean" 확인

    == 현재 변화분도 없고 commit할 것이 없음 

(참고) 서명과 함께 commit

git commit -sm "커밋 메시지"

- "-s"를 함께 넣어 명령 실행

- git show를 실행하면 아래와 같이 "Signed-off-by :~~"가 표시됨

 

- Why 사용?  license에 관련하여 인식하였음을 표시

- 실제로는 "Contributor License Agreements" 많이 사용 

   (https://opensource.google/documentation/reference/cla) (https://cla.developers.google.com/clas

 

(참고) commit 수정하기

- 가장 최신 commit만 수정 가능

- 변경분을 추가하지않고 메시지만 추가할 수 있고, 수정하는 순간 commit ID 도 변경됨

git commit --amend

 

(참고) commit 삭제하기

- 최상위 commit부터 지울 수 있음(중간 X) 

# 생성한 commit 정보 확인하기
$ git log --oneline -3

# 최상위 commit부터 첫번째(1) 내용 삭제하기
$ git reset --hard HEAD~1

< Pull-Requset 하는 과정>

1. git branch 명령어를 통해 branch 확인하기

2. Fork 저장소에 업로드에서 commit 제출(pull-request) 준비하기 (push 하기)

git push origin (branch명)

token 만들어서 username, password 에 토큰 붙여넣기

3. Fork저장소(Github)에서 commit 제출하기

- 해당 branch에서 "Open pull request" 누르기

--> 현재까지의 과정은 아래와 같다

출처 : OpenUp 강의 자료

 

'Computer Science > git&github' 카테고리의 다른 글

Git&Github 고급 (Rebase)  (0) 2022.02.23
Stash vs Checkout  (0) 2022.02.16
개발자가 오픈소스 읽는 방법  (0) 2022.02.16
기본 Git&Github 협업과정  (0) 2022.02.16
[git & github] 깃허브  (0) 2020.05.18

+ Recent posts