직접 새로운 커밋을 작성하는 대신 색인에 원격 변경을 적용 할 수 있습니까?Git에서 색인으로 당기기
로컬 콘텐츠를 수정하지 않고 원격 콘텐츠가있는 패치를 적용하는 것이 가장 이상적입니다.
감사
직접 새로운 커밋을 작성하는 대신 색인에 원격 변경을 적용 할 수 있습니까?Git에서 색인으로 당기기
로컬 콘텐츠를 수정하지 않고 원격 콘텐츠가있는 패치를 적용하는 것이 가장 이상적입니다.
감사
git fetch
원격에서 변화를 가져하지만 master
분기와 병합하지 않습니다. 그것은 원격 추적 지점에있을 것입니다. 그런 다음 수동으로 병합 할 수 있습니다. git pull
은이 두 가지 작업을 함께 수행합니다.
그런 다음 원격 변경 사항을 가져온 다음 원격지 기록의 어떤 지점에서 패치를 생성해야합니까? 이것은 병합이 해결하고자하는 문제입니다. 병합 커밋은 지금까지 로컬 브랜치에 적용된 원격 버전을 나타냅니다.
git fetch
및 git merge --no-commit
을 수행하면 병합은 작업 영역 (및 색인)에서 수행되지만 커밋되지는 않으며 메타 데이터는 커밋 할 때 해당 상태로 유지됩니다. 병합 커밋으로 표시됩니다. 그게 네가 필요한거야?
의도 한 작업 흐름이 무엇인지 확실하지 않지만 현재 분기 또는 색인에 영향을주지 않고 원격 변경 사항을 가져올 수 있습니다.
git fetch
그런 다음 커밋 병합을 설정하지 않고 현재 인덱스에 가져온 변화를 병합 할 수 있습니다,하지만이 수행 할 수있는 매우 모호한 특이한 일이다. 다음 세 가지 방법 병합 옵션이 더 좋을 수없는 경우 원격 지사는, 현재 HEAD의 빨리 감기 인 경우
git read-tree -m HEAD origin/remote-branch
두 나무 버전은 최고입니다.
git read-tree -m $(git merge-base HEAD origin/remote-branch) HEAD origin/remote-branch
차이점에 대한 자세한 내용은
git read-tree
에 대한 매뉴얼 페이지를 참조하십시오.
나는이 페이지에 계속 올라와 있으며 코멘트에 있기 때문에 옳은 대답을 놓치고 있습니다.
git-pull --no-commit [email protected]:username/project.git
this answer을 살펴보십시오. 병합 커밋을 피하기 위해 구성을 조정할 수 있습니다.
이것이 OP가 실제로 원하는 것으로 의심됩니다. (인덱스 *와 * 작업 트리를 병합하지만 커밋하지 않습니다). 'pull --no-commit' 만하면됩니다. 그것은 합쳐져서 합쳐집니다. – Cascabel