1. GitHub

- 주로 오픈소스를 공유하기 위한 기능을 수행

- 그 외에도 공유 소스 서버가 있지만 가장 주로 사용 됨

 

1) 예시_ uftrace (오픈 소스)

gcc -pg test.c

uftrace a.out
- 트레이스를 보면서 함수 콜을 확인 할 수 있다

 

uftrace -A fib@arg1 -R fib@retval fibonacci 5

- 트리 구조로 보기 편하게 해줌

 

2) pull request

- 내 코드를 포스팅을 하는 것

- 내 레파지토리를 포크로 만들어 링크를 뒀으니 당겨가서 업로드 해주라는 의미

 

3) review

- 코드는 어떤식으로 했는지 어떻게 사용하는 지 적어두는 것

- 협업을 위해 코드 스타일을 공유함

- before/after를 사용하여 만들면 좋음

- commit은 하나의 일을 처리하기 위한 단위로 쪼개서 게시하는 것이 좋음

- 마크 다운도 활용할 수 있음

 

4) issue / discussion

- 버그 리포트, 질문, 제안

- 만든 이 본인도 바로 push 하지 않고 서로 이야기를 하고 수정함

 

5) rebase

- Node.js => (fork) => My/Node.js => (Clone) => Node.js => (push) => My/Node.js

- 하나의 파일을 서로 fork해서 서로 수정하면 베이스가 서로 달라 오류가 발생 => 이를 위해 rebase를 함

 

2. 실습

- git add, git commit, git push,  git checkout -b develop

- git add ammend

- fetch

- rebase

 

1) git add ammend

- 최신에 있는 commit을 수정하고자 함

 

2) git rebase -i --root

- 중간에 있는 commit을 수정하고 싶으면 최신 commit이 원하는 커밋이 될 수 있도록 커밋해줌

 

3) git checkout

- 도서관의 책을 대여하는 개념

- .git폴더에 브랜치들을 모두 압축하여 저장하다가 git checkout을 하면 해당 책을 빌려와서 현재 폴더에 펼쳐준다.

- 특정 파일만 최신 commit으로 가져올 수도 있다.

 

 

4) pull-request 수정

- git push origin develop -f 

 

3. 형상관리 사용 배경

1) 소프트웨어의 특징

변경성, 비가시성

 

2) 형상관리의 특징

- coomit 단위로 코딩하고 리뷰하고 토론하고 적용한다

 

 

 

 

 

 

Git-training-v3.pdf
2.76MB
git-training-ex-v2.zip
0.22MB

'데이터 분석가 역량' 카테고리의 다른 글

day 15 ] 내 데이터로 출력해보기  (0) 2019.05.21
day 15 ] grammar  (0) 2019.05.21
day 13 ] pos  (0) 2019.05.16
day 12 ] 불용어  (0) 2019.05.16
day 12] BPE  (0) 2019.05.15

+ Recent posts