2013-05-29 1 views
2

Git을 사용하려는 사회 과학자로서 나는 믿을 수 없을 정도로 초보자 용 질문을 가지고 있습니다.두 개의 브랜치 (Git)에서 사용되는 동일한 변수 이름

두 개의 분기가 있다고 가정 해 각각 변수가 foo 인 경우를 가정 해 보겠습니다. 이 두 가지를 병합하면 변수 foo이 두 곳에서 정의되어 혼동을 일으킬 수 있습니다.

이것은 일반적으로 Git와는 다른 기본적인 코딩 오류입니다. 그러나 Git을 사용하여 광범위한 브랜치를 실행하면 사람들은 컨텍스트를 더 자주 전환하고 모든 브랜치에서 존재하는 변수를 기억하지 못할 수 있습니다.

해결책이 "더주의해야합니까?"또는 힘내는이를 보호 할만한 것이 있습니까?

+1

이것은 특정 버전 관리에만 국한되지 않지만 대답은 ** tests **입니다 (버전 제어 시스템에 의해 * 후크 *에서 자동으로 실행될 수 있습니다. 예 : 커밋 ... 음, 최소한 기본 빠른 테스트) –

답변

0

먼저 변수의 범위가 가능한 한 작아야합니다. 상대적으로 작은 범위가있는 경우 동일한 이름을 가진 두 개의 변수가 있으면 좋습니다.
예를 들어, 메서드에서 foo 변수를 가지고 있고 Buzz() 메서드에서 변수가 foo 인 것이 문제가되지 않으며 병합시 충돌이 발생하지 않아도됩니다.

동일한 범위에서 동일한 변수 이름이 사용되는 상황에 있다면 수동 병합을 수행해야합니다. 각 코드 변경에 대한 단위 테스트가 병합 된 후에도 코드를 보장 할 수있는 유일한 방법은 여전히 ​​유효합니다.
단위 테스트도 병합되며 수동 병합 후에도 모두 유효성을 검사해야합니다.