例如,我在开发 feature/user
用户管理模块,提供用户的名称,信息等等, 我的同事在开发 feature/login
登录系统,他需要我的用户模块来检测是否可以登录,获取用户信息等等。
问题1:
假设我已经完成了用户系统,那么怎么给我的同事让他使用?
难道是我先 finish
, 同事再 finish
, 同事再 start
么?不太现实。
问题2:
假设我没有完成用户系统,但是我完成了同事所需要的内容,那怎么给他使用?
难道是我先 finish
, 同事再 finish
, 我和同事再 start
,分别继续开发么?
这些有什么好的解决方案么?
补充:首先主要是时间太紧张了,一个人肯定写不来,所以要多个人一起,可是多个人又会牵扯依赖问题。所以想知道如何解决这个问题。
동일한 엔지니어링 프로젝트에서 개발 중인지 언급하지 않았으므로 여기서는 동일한 프로젝트에서 작업 중이라고 가정하겠습니다. 설명하기 전에 다음 사항을 살펴보시기 바랍니다. 명확하게 알아두세요 :
Git 노드는 P2P 방식입니다.
Git은 ssh, http, 파일 및 기타 프로토콜을 지원합니다
내 제안:
John과 Jane이 같은 프로젝트에서 협력한다고 가정해 보겠습니다.
으아아아John이 자신의 개인 디렉터리에 있는 프로젝트 데모를 만듭니다.
으아아아Jane이 John과 동일한 개발 시스템을 사용하는 경우 John의 코드를 집에서 직접 복제할 수 있습니다.
으아아아 은 원본 소스의 모든 업데이트를 자신의 코드로 직접 가져올 수 있습니다.이제 John도 계속 개발할 수 있고 Jane도 계속 개발할 수 있으며 둘 다 계속 제출할 수 있습니다.
으아아아
이제 John과 Jane은 서로의 코드를 자신의 폴더에 넣어서 행복하게 개발할 수 있습니다.으아아아
이 요구사항은 노동 분업 측면에서 충돌한다고 생각합니다.
모듈은 다른 모듈에 크게 의존하며 기다려야 합니다.
필요 사항을 구체화하세요
사용자 모듈이 완성된 후 제출하면 됩니다
이때 모듈을 분기하고 계속하세요.
동료가 모듈을 분기하고 계속하세요
이것은 표준 절차입니다
지속적 통합이라는 개념이 있습니다. 통합 작업을 일찍 수행할수록 코드에 더 좋습니다.
에이러한 환경에 대처하기 위해 하향으로 확장되는 개념을 참조할 수 있습니다.
이러한 상황에서는 다음 방법을 권장합니다.
으로 병합합니다.feature/user
브랜치에서 새 브랜치를 엽니다.feature/user_login
feature/user
개발이 사용 가능한 단계에 들어가면feature/user_login
가를 직접 테스트할 수 있도록 코드를
feature/user_login
에 병합합니다. >
feature/user_login
이 개발되면feature/user
로 병합하고 마지막으로
finish
feature/user
feature/user_login
를feature/user
의 하위 기능으로 개발하기 위한 것입니다.이렇게 기능이 설계되어 있지 않다면
feature/user
finish
다음에feature/login
를 개발하는 것이 가장 좋습니다.