현재 고용주에서는 Github에서 호스팅되는 오픈 소스 프로젝트를 응용 프로그램의 구성 요소로 사용하고 있습니다. 필자는이 프로젝트에서 필요한 기능을 추가하고이를 빌드 시스템과 통합하기 위해 노력하고 있습니다. 관리자와 저는 오픈 소스 프로젝트에 합당한만큼이 구성 요소에 대한 우리의 작업을 제출하고 싶다는 데 동의합니다. 내 질문은 오픈 소스 프로젝트에 다시 추가 할 수있는 것들을 쉽게 분리 할 수있는 방식으로 Git 커밋을 유지하는 가장 좋은 워크 플로우 / 기술에 관한 것입니다-버그 수정 및 충분히 일반적인 새로운 기능- 빌드 위치 및 응용 프로그램 상수와 같이 프로젝트와 관련된 것에서
내가 지금까지 한 일은 적절한 세부 단위로 모든 변경 사항을 커밋하는 개인 Git 브랜치를 유지하는 것입니다. 그런 다음 cherry-pick
오픈 소스 커밋을 마스터 브랜치에 추가하고 Github에 다시 제출합니다.
병합을 사용하여 동일한 내용으로 별도의 커밋을 계속 생성하지는 않지만 회사 별 커밋을 제외하고 합리적인 워크 플로우를 유지 하면서이 작업을 수행하는 방법을 모르겠습니다.
예를 들어 개인 지점의 마스터 및 회사 특정 항목에 오픈 소스 가능 항목을 커밋 한 다음 필요에 따라 마스터를 해당 지점으로 병합하여 마스터 분기가 병합 전에 커밋을 가리 키도록 할 수 있다고 가정합니다. 오픈 소스 가능 항목을 다시 커밋 한 다음 다시 병합하십시오. 이 워크 플로에서 어색한 점은 내가 속한 브랜치에 대한 모든 작업을 미리 결정하고 완료된 것처럼 작업 한 다음 커밋하고 테스트하기 전에 병합해야한다는 것입니다. Git에서 정말 좋아하는 것 중 하나는 응용 프로그램을 작동시키는 데 필요한 모든 작업을 수행 한 다음 나중에 변경 내용을 커밋 할 방법과 위치를 결정하는 것이 얼마나 쉬운 지입니다. 내가 알 수있는 한, 현재 지점에 있고 몇 가지 작업을 수행했다면
장기 기여를 위해 합리적인 워크 플로를 수행하고 있습니까? 누구나 더 나은 다른 워크 플로를 추천 할 수있는 이유는 무엇입니까?