나는 일반적으로 GitHub와 VCS를 처음 사용합니다. 나는 여러 해 동안 여러 언어로 프로그래밍을 해왔지만 항상 커스텀 프로젝트 (공개 릴리스는 아님)에 솔로로 일했습니다. 나는 최근에 작업중 인 프로젝트에서 GitHub에서 다운로드 한 jQuery UI 위젯을 사용하기 시작했습니다. 리포지는 더 이상 원저자가 유지 관리하지 않습니다. 다른 포크는 원래 풀 요청 중 일부를 통합했습니다. 이것은 내가 포크 한 것입니다.
나는 몇 가지 버그를 발견하고 그에 대한 수정 사항을 생각해 냈습니다. 이 수정 프로그램에 기여하고 싶지만 기존 기능 중 일부를 손상시킬 수있는 다른 많은 변경 사항도 있습니다. 또한 다른 포크의 아이디어를 통합하고 싶습니다.
나는 여전히 GIT과 GitHub를 배우고 있으며 모든 것을 다루는 가장 좋은 방법을 찾으려고 노력하고 있습니다. 워크 플로, 병합, 풀 요청, 체리 피킹, 리베이스, 브랜칭 등 다양한 개념 / 작업에 대해 많은 독서 (여기서 SO, GitHub 도움말 페이지, Pro Git)를 수행했습니다. 내 회색 물질은 수영과 나는 시작해야 하고 내가 더 잘 내가 읽은 것을 이해 할 수 있습니다.
주된 이슈:
나는 한 번에 하나의 풀 요청 만 가질 수 있다고 읽은 것 같습니다. 즉, 각 버그마다 별도의 분기가 있고 각 버그에 대해 별도의 풀 요청이 필요합니까?
공백 문제를 정리하고 싶지만 별도의 커밋 에서이 작업을 수행하는 것이 가장 좋습니다. 마스터 또는 별도의 지점에서이 작업을 수행해야합니까? 너무 사소한 것에 대해 풀 요청을하고 싶지 않지만 분기 전에 공백을 변경하면 버그 수정에 대한 풀 요청에 영향을 미칩니 까? 일부 포크는 공백을 정리하여 효과적으로 diff를 쓸모 없게 만들었습니다.
버그를 이미 수정했지만 버그를 문서화하는 방법으로 포크에 대한 문제를 만들려고 생각했습니다. 좋은 생각입니까? 이슈, 커밋 및 병합을 마스터에 연결하려면 어떻게해야합니까? 풀 요청 업스트림을 수행하는 경우 문제가 업스트림으로 표시되거나 해당 문서 링크가 손실됩니까? 업스트림 리포지토리에 대한 문제를 열 수 없습니다 (문제 탭이 없음).
내가 사용하려는 그의 아이디어에 대해 다른 포크 작성자에게 신용을주는 가장 좋은 방법은 무엇입니까? 그의 변경 사항이 이전 버전의 업스트림에 적용되고 다른 변경 사항과 호환되지 않기 때문에 그의 코드를 정확하게 사용할 수 없습니다. 그러나 아이디어를 사용하고 신용이 필요한 곳에서 신용을주고 싶습니다. 커밋 메시지에서 자신의 저장소 (또는 프로파일 또는 특정 커밋)에 연결해야합니까?
기본 파일 맨 위에있는 readme 파일과 DocBlock을 변경하는 것과 관련된 에티켓은 무엇입니까? 변경, 내 이름 추가, 내 리포지토리 및 데모에 대한 링크 추가, 원본 데모에 대한 링크 제거 (포크가 원본과 호환되지 않기 때문에)가 괜찮습니까? 물론 저자의 원본 이름과 라이센스 정보는 그대로 두겠습니다. 레코드의 경우 MIT 라이센스에 따라 라이센스가 부여됩니다.
VCS를 사용한 적이없는 솔로 개발자로서 나는 역사 를 다시 쓰는 것에 익숙합니다 . 나는 완벽 주의자이며 깔끔하고 깔끔한 것들을 좋아합니다. 기록 된 역사에 대한 아이디어는 저를 조금 불안하게 만들고 처음부터 제대로하고 싶습니다 . 나는 놀거나 배우는 새로운 저장소를 만들었지 만 jQuery UI 위젯을 수정하여 프로젝트를 진행할 수 있기를 간절히 바란다.