2013-10-02 1 views
0

힘내 문제를 해결하기 위해 노력하고있어. 나는 TortoiseGit을 사용하고있다.힘내 당겨 병합 가져 오기

기본적으로 master-branch를 체크 아웃하고 변경하지 않고 현재 로컬 repo를 업데이트하려고합니다. 가져 오기

: 다운로드 정보를 원격 지점에서

병합 : 나는 몇이에 대한 명령이 알고있는 것처럼

병합 말했다 로컬 지점

에 대한 정보 : 위의 작업 결합

그러나 몇 가지가 있습니다. 이해가 안되는 이메일 :

  • 수정을 확인하면 많은 파일을 수정했음을 알 수 있습니다. 나는 어떻게 든이 변화가 원격 지사의 변화와 관련이 있다고 생각한다.
  • 가져 오기를 수행하면 원격 정보를 올바르게 가져오고 병합을 수행하면 "Already up to date"라고 표시된다. (아마도 둘 다 결합) 내 로컬 수정 내용이 병합에 의해 덮어 쓰여진다는 오류가 발생합니다. 이것은 내가 현지 수정을하지 않았기 때문에 저를 놀라게합니다. 이것은 아마도 이전의 지점과 관련이 있지만, 나는 어떻게 보지 못했습니다.

나는 힘내 기의 기초를 오해 했는가, 아니면 아무도이 행동을 나에게 설명 할 수 있을까?

+0

나에게 이상한 점은 내가 어떤 파일도 건드리지 않았다는 사실입니다. 그러나 한 번 가져 오기를 실행했습니다. 현재 나는 최신 버전의 코드를 가지고 있지만 되돌리기를 수행 한 다음에 만 풀을 수행합니다. 그 변경 사항은 내 지역 레포에서 어떻게 상륙 했습니까? – Kenneth

+0

라인 엔딩이 유닉스에서 윈도우로 또는 그 반대로 바뀔 수 있습니까? – Jeff

답변

1

변경으로 간주 될 수있는 많은 것들이있을 수 있습니다. 우선 git pull에 해당하는 것이 실제로 있습니다. 이 작업을 수행 한 후

git fetch 
git merge FETCH_HEAD 

지금, 당신은 아마 망할 놈의 차이로 고려하고 무엇을보고 git diff FETCH_HEAD을 수행합니다. FETCH_HEAD를 origin/master과 같이 사용자에게 더 친숙한 것으로 바꿀 수 있습니다.

"수정"을 없애고 싶다면 파일의 수정 시간 일 수 있습니다. 모든 작업 트리 파일을 재설정하는 git reset --hard을 수행 할 수 있습니다. 그들이 HEAD에 있었던 것, 아마도 당신은 지금 당겨 당할 수있을 것입니다.

또는 git reset --hard FETCH_HEAD (예 : origin/master)으로 직접 재설정 할 수 있습니다.