2013-04-24 2 views
2

Git 및 Gerrit를 처음 사용합니다.Gerrit는 Out-Of-Sync가 가능합니까?

Gerrit를 통해 처음 몇 가지 커밋을 만든 다음 Gerrit를 우회하여 Git에게 직접 커밋을하면 Gerrit가 동기화되지 않을까요?

직접 커밋으로 인해 추가 커밋에 문제가 있습니까?

+0

[게시물에 서명 또는 태그 라인을 사용하지 마십시오.] (http://stackoverflow.com/faq#signatures). – meagar

답변

2

아니요 아무 문제 없습니다. 그러나 이전에 업로드 한 변경 사항을 병합하기 전에 리베이스해야 할 수 있습니다 [변경 사항 무시로 인해 CL의 상위가 변경된 경우]. 이 외에도 변경 사항을 병합 할 때 충돌이 발생할 수 있습니다. 향후 커밋에 영향을주지 않습니다.

+0

두 가지 질문이 있습니다. a) "이전에 업로드 한 변경 사항을 병합하기 전에 리베이스해야 할 수도 있습니다"라는 의미. 일반적으로 커밋하기 전에 git 저장소에서 정상적인 페치 및 리베이스가 수행됩니다. b) "변경 사항을 병합하려고 할 때 충돌이 발생할 수 있습니다"라는 의미는 무엇입니까? 여기서 merge는 Gerrit To Git 또는 다른 것의 다른 커밋을 병합하는 것을 의미합니까? – Abhinav

+0

a) 지역 머신에서 변경 사항을 체리 선택하고 gerrit에서 변경 사항을 다시 푸시해야한다는 의미에서 리베이스하십시오. gerrit에 업로드 된 CL의 부모가 변경하는 경우에만 필요합니다. b) gerrit를 건너 뛰고 File1에서 10 번 행을 수정하는 CL1을 병합한다고 가정하면 gerrit에 업로드 된 변경 사항이 있으며 동일한 파일에서 동일한 행을 수정합니다. 이제이 변경 사항을 병합하려고하면 gerrit가 충돌을 표시하고 변경 사항을 병합하지 못하게됩니다. – mrutyunjay

+0

a) 커밋 전에 변경 사항을 리베이스해야하는 일반적인 문제인 것 같습니다. gerrit가 사용 중이더라도 상위 변경 목록을 가리 키기 위해 변경 사항을 리베이스해야합니다. b) 첫 번째 변경 목록이 File1에서 10 번 행을 수정하고 여전히 gerrit이고 두 번째 커밋이 동일한 행을 수정하는 경우 gerrit를 사용하는 동안 발생할 수있는 상황의 예가 두 번째 커밋과 충돌 할 수 있습니다. 내 이해가 맞습니까? – Abhinav