최근에 git show <hash>
을 사용하여 diff를 만들었습니다. 나중에 git diff <hash>~ <hash>
보다 입력하기가 쉽고 커밋 정보 (타임 스탬프, 사용자, 해시, 주석)가 표시됩니다.). 그런 다음 git apply <filename>
을 사용하여 패치를 적용 할 수 있습니다.`git show`를 사용하여 다중 커밋에 패치 적용 및 적용
git show -3
은 동일한 추가 정보와 함께 마지막 세 가지 커밋을 표시합니다. 그러나 git apply
은이 파일을 모두 unstaged 변경 사항으로 작업 디렉토리에 스쿼시하고 모든 커밋 정보를 손실합니다.
git에는 모든 정보가 적용될 수 있습니까? 패치를 세 파일로 나누어서 개별적으로 적용하고 새로운 커밋을 만드는 것보다 플래그를 전달하는 것이 훨씬 더 간단합니다.
이 작동처럼 내가해야하지만, 그것은 보인다 가서'git show'를 사용하여 이미 만든 패치를 다시 실행하십시오. 앞으로는 format-patch를 사용하기 시작할 것입니다. 'git cherry-pick'을 사용하지 않는 이유는 새로운 dev 서버로 옮겨 가고 있으며 근본적으로 git에서 읽기 전용 액세스 만 가능하기 때문입니다. 모든 코드 디렉토리를 scp 처리하는 대신 복사 할 패치를 만들고 있습니다. – redbmk