2015-01-26 5 views
2

여기에 문제가 있으며 왜 그런지 모르겠지만 아마도 뭔가 잘못되었습니다. 나는 같은 파일에서 일하고 있었고 다른 개발자도 작업 중이었습니다. 그는 파일이 보관소에 밀려 났다고 말했다. 변경 사항을 가져 오기 전에 변경 사항을 저장하고 다른 개발자의 변경 사항과 병합했지만 충돌로 인해 파일 충돌이 발생하고 다른 개발자 변경 사항과 광산을 잃어 버리지 않도록해야 할 일은 없습니다. 거기에 각 옵션이 의미SmartGit을 사용하여 git 파일 충돌 문제를 해결하십시오. 우리 대 상대방

enter image description here

: 나는 => 해결 충돌 마우스 오른쪽 버튼으로 클릭을 열면 내가이 창을있어? 어느 것이 더 안전하고 두 가지 변경 사항을 모두 저장합니까? (개발자 및 광산)

이 같은 Conflict solver 다음 내가 가진 무언가 열면 :

enter image description here

그러나 다시 내가 모두 변경을 유지하기 위해 어떻게 또는 무엇 모르겠어요, 어떤 조언 ? 도움?

답변

5

나는 smartgit를 사용하지 않지만, 스크린 샷에서 나는 다음과 같이 명령을 이눔하는 옵션이지도 알 수 있습니다 :

  1. 것은 아무것도하지 않고 해결되지 않은 파일을 둡니다. 이 옵션을 선택하면 어떤 일이 발생할지 확실하지 않습니다. 자식 명령과
  2. 사용하는 다른 개발자의 변경 : 이미 그랬던 것처럼, git checkout --theirs -- FILE
  3. 갈등 해결 프로그램을 엽니 다 git checkout --ours -- FILE
  4. 는 자식 명령과 내 변경을 사용합니다. 우리가 using my changes--theirs를 사용하는 이유는 rebase을하고 있기 때문에 using their changes는,이 때, 다른 개발자의 변경에 원본을 변경 리베이스하는 --ours 동안

당신은 호기심이있을 수 있습니다. rebase을 수행 할 때 변경 사항을 임시 파일에 저장하고 HEAD을 원격 지점의 최신 커밋 (다른 개발자의 변경 사항)으로 이동하고 현재 분기에 대한 변경 사항을 재생하는 것과 같습니다 (변경 사항이 theirs.

두 변경 내용을 모두 저장하려면 mark the file as resolved 수동으로 모든 충돌을 해결 한 다음 리베이스를 계속해야합니다.

+0

파일을 확인하지 않은 상태에서 스테이지 및 커밋하면 충돌 표식이있는 파일을 커밋합니다. 내가 이것을 어떻게 발견했는지 묻지 마라. : - / – Rebeccah