2012-10-31 3 views
1

저는 프로젝트에서 일하고 있습니다. 몇 개의 코드 블록이 서로 다른 간격으로 삭제 된 파일을 가지고 있습니다. 나는이 블록들 중 일부만을 복구해야하고 내가 만들고있는 다른 것들에 넣어야한다. Git Extensions 나 GitHub에서 볼 때와 같이, 커밋 된 이전 블록을보고 선 앞에/정크를 사용하지 않고 복사 할 수있는 방법이 있습니까? 기본적으로 일부 오래된 코드를 가져올 수 있기를 원합니다. 수동으로 저장소에없는 다른 프로젝트에 사용되는 블록.GitHub는 코드 블록을 삭제했습니다.

덕분에 당신이 커밋의 목록을 볼 수 있습니다 GitHub의에서

답변

1

일반적인 생각은 다음과 같습니다.

" How to grep (search) committed code in the git history?"을 참조하십시오 : 당신이 더 중요한, 추가 또는 한 커밋을 감지하기 위해
  • 사용 git log -SFoo -- path_containing_change에게 특정 라인을 제거했다. git grep <regexp> $(git rev-list --all)도 도움이 될 수 있습니다

  • 이 다른 REPO 프로젝트에 그 패치를 적용 (" git format-patch” equivalent for a single file?"에서와 같이) 올바른 파일에 대한 패치를 만들어, 각 관련 커밋에 대한

  • (비록 속도가 느려질 수 있습니다.)

1

, 단순히 다음이 코드가 여전히 존재하는 커밋에 "보기 코드"를 클릭합니다. 그런 다음 원하는 코드가 들어있는 파일을 탐색하고 "raw"를 클릭하여 "모든 정크가없는"파일을 볼 수 있습니다.

+0

불행히도 현재보다 오래된 커밋의 경우 "원시"를 볼 필요가 있습니다. 그래도 고마워. – PolishHurricane

+0

당신은 할 수 있습니다, 나는 당신이 그렇게하는 방법을 설명했습니다. – Tomdarkness

관련 문제