Chimy's Program
GIT Collaboration - 오픈소스 참여 : patch 본문
GIT patch를 이용하여 오픈소스 참여
오픈소스는 누구나 pull할 수 있지만 push할 수 없는 소스로
patch는 오픈소스에 참여하기 위해 오픈소스 소유자에게 자신의 코드를 공유하기 위해 사용할 수있다
work.txt에 4b 추가 후 버전 생성, 5b 추가 후 버전 생성
git format-patch 원격저장소에 저장된 버전의 commit 아이디로 명령어를 실행
※ git format-patch commit 아이디 : commit 아이디 이후의 버전들에 대한 정보를 담은 파일을 생성한다
patch파일을 열어보니 각각의 버전에 대한 차이점을 확인할 수 있다
이 patch파일을 오픈소스 기여자에게 전달하여 오픈소스에 참여가 가능하다
오픈소스 소유자는 받은 patch파일들을 기존 오픈소스에 적용하기 쉽게 기존 폴더로 가져옵니다
※ cp ../b/*.patch . : 부모디렉토리/b에서 확장자가 patch인 모든 파일을 현재 위치에 복사한다
am명령어로 받은 patch파일들을 commit 해줍니다
이때 commit 아이디는 commit 시간 등이 달라지기 때문에
패치파일을 보내준 사용자의 commit 아이디와 다르게 생성된다
※ git am(apply a series of patches from a mailbox) patch파일 : patch파일들을 commit해주는 명령어
※ git am -3 patch파일 : 3-way-merge 옵션
※ git am -i patch파일 : 대화형 interactive 모드 / 2020년 4월 기준 아무메세지가 출력되지 않아 빼고 실행
'GIT' 카테고리의 다른 글
GIT Collaboration 더 알아볼 주제 (0) | 2020.04.11 |
---|---|
GIT Collaboration - 오픈소스 참여 : pull request (0) | 2020.04.09 |
GIT Collaboration - pull vs fetch (0) | 2020.04.07 |
GIT Collaboration - 협업 중 push & pull (0) | 2020.04.06 |
GIT Collaboration - 여럿이서 작업 시작하기 (0) | 2020.04.05 |