Git와 명령줄을 사용하여 병합하는 동안 로컬 파일 또는 원격 파일을 유지하는 방법은 무엇입니까?
vimdiff를 사용하여 수정사항을 병합하는 방법을 알고 있지만, 전체 파일이 보관하거나 버릴 수 있다는 것을 알고 있다고 가정하면 어떻게 해야 합니까?
각각의 vimdiff를 열고 싶지 않습니다. '로컬 유지' 또는 '원격 유지' 명령을 변경합니다.
E.G: 누군가 창 아래에서 파일을 열고 EOL을 변경한 다음 커밋했기 때문에 변경된 것으로 표시된 파일과 병합했습니다.병합할 때, 나는 나만의 버전을 유지하고 그의 버전을 버리고 싶습니다.
저는 그 반대에도 관심이 있습니다.큰 실수를 저질렀기 때문에 변경 사항을 삭제하고 원격 파일을 수락하려고 합니다.
다음을 수행할 수도 있습니다.
git checkout --theirs /path/to/file
원격 파일을 보관하려면 다음을 수행합니다.
git checkout --ours /path/to/file
로컬 파일을 보관합니다.
그리고나서git add
그들과 모든 것이 끝났습니다.
판:이것은 잠시 동안이라는 것을 명심하세요.merge
시나리오중에rebase
--theirs
당신이 일하던 지점을 말합니다.
이러한 접근 방식은 각 파일을 개별적으로 선택할 필요가 없으므로 보다 간단합니다.
# keep remote files
git merge --strategy-option theirs
# keep local files
git merge --strategy-option ours
또는
# keep remote files
git pull -Xtheirs
# keep local files
git pull -Xours
다음에서 직접 복사:풀 중에 변경된 Git 병합 충돌 해결
git checkout {branch-name} -- {file-name}
선택한 분기의 파일이 사용됩니다.
나는 이것이 좋습니다 왜냐하면posh-git
자동 완성은 이것과 잘 어울립니다.또한 원격 지점과 로컬 지점에 대한 모호성도 제거합니다.그리고.--theirs
어쨌든 저한테는 통하지 않았어요.
라인 엔드 관련 항목은 다음을 참조하십시오.man git-merge
:
--ignore-space-change
--ignore-all-space
--ignore-space-at-eol
추가해야 합니다.autocrlf = false
및/또는safecrlf = false
윈도우즈 클론(.git/config)으로
Gitmerge 도구 사용
병합 도구를 다음과 같이 구성하는 경우:
git config mergetool.cp.cmd '/bin/cp -v "$REMOTE" "$MERGED"'
git config mergetool.cp.trustExitCode true
그럼 간단한
git mergetool --tool=cp
git mergetool --tool=cp -- paths/to/files.txt
git mergetool --tool=cp -y -- paths/to/files.txt # without prompting
그 일을 할 것입니다.
단순 git 명령 사용
다른 경우에는, 제 생각엔
git checkout HEAD -- path/to/myfile.txt
방법을 강구해야 합니다.
편집을 통해 반대로 작업을 망쳤기 때문):
git checkout remote/branch_to_merge -- path/to/myfile.txt
하루 전에 이 질문과 매우 유사한 질문을 던졌지만, 제 질문은 데이터베이스 sqlite3와 관련된 것이기 때문에 약간 다릅니다.
그런데 이 사이트의 매니저가 질문을 삭제해달라고 해서 삭제를 했는데 결국 저를 차단했습니다.
어쨌든, 제 문제에 대한 대답은 "git checkout -- their db.sqlite3"였습니다.
데이터베이스와 관련된 것으로, 단순히 "git checkout --their db.sqlite3"에 경로를 입력할 필요가 없습니다.
저는 저와 같은 문제를 겪은 사람에게 이 답변을 남깁니다.
언급URL : https://stackoverflow.com/questions/6650215/how-to-keep-the-local-file-or-the-remote-file-during-merge-using-git-and-the-com
'source' 카테고리의 다른 글
Oracle: 쿼리를 통해 전체 비율을 얻는 방법은 무엇입니까? (0) | 2023.07.16 |
---|---|
Python Logging을 사용하여 두 번 나타나는 로그 메시지 (0) | 2023.07.16 |
Git: 권한 거부(공개 키) 치명적 - 원격 리포지토리에서 읽을 수 없습니다.Git 저장소를 복제하는 동안 (0) | 2023.07.16 |
Oracle 날짜가 주말인지 확인하시겠습니까? (0) | 2023.07.16 |
Panda를 사용하여 기존 엑셀 파일에 새 시트를 저장하는 방법은 무엇입니까? (0) | 2023.07.16 |