지난 주 Git 2.23 분산 소스 제어 시스템의 새 버전 출시가 발표되었습니다.. 이전 버전에 비해이 새 버전에서는 500 개가 조금 넘는 변경 사항이 적용되었습니다.
하지만 사이 최근에이 새 버전에 도입 된 개선 사항 중 가장 주목을받는 것은 git switch
y git restore
, 이것들 두 가지 실험 명령입니다 특정 명령을 어느 정도 대체하는 데 사용할 수 있습니다. git checkout
. git에 익숙하지 않은 사람들을 위해, 이것이 버전 분기 및 병합을 기반으로 유연한 비선형 개발 도구를 제공하는 가장 인기 있고 신뢰할 수있는 고성능 버전 제어 시스템 중 하나라는 것을 알아야합니다.
히스토리 무결성과 뒤늦은 변경 사항에 대한 저항을 보장하기 위해 모든 이전 히스토리의 암시 적 해시가 각 커밋에 사용되며 개별 커밋 및 태그 개발자도 디지털 서명 할 수 있습니다.
git 2.23의 주요 새로운 기능
이 새 버전의 git에서 위에서 언급 한 실험 명령이 제공됩니다. "git switch
y git restore
".
이 새로운 명령 기능을 분리하도록 설계되었습니다. «git checkout
» 가지 조작 (변경 및 생성) 및 복원과 같은 느슨한 작업 디렉토리 («git checkout $ commit - $ filename
») 또는 대기 장소에서 즉시 («--staging
«, 아날로그가 없습니다«git checkout
").
git checkout
예를 들어, 저장소에서 브랜치를 변경하거나 새 브랜치를 생성 할 수있는 명령입니다.
사용자가 개별 파일을 편집하거나 하드 드라이브의 저장소에있는 파일 이름을 파일과 유사하게 재설정하려는 경우 git checkout을 사용할 수도 있습니다. 이러한 가능성 외에도 git checkout 명령을 사용하여 다른 작업을 수행 할 수 있습니다.
주목할 가치가있는 «와 달리git checkout
«,«git restore
» 복원 된 디렉토리에서 추적되지 않은 파일을 제거합니다. (기본적으로 "-오버레이 없음").
와 git restore
, 변경 될 파일, 변경 방법 및 변경 위치를 정확히 결정하는 것이 훨씬 쉽습니다. 사실 복잡한 명령을 사용하는 대신 git checkout
, git restore
복원 된 변경 사항을 저장할 위치를 지정하는 두 가지 옵션을 제공합니다.
따라서 매개 변수를 전달하면 --worktree
(또는 아무것도 지정하지 않으면) 하드 드라이브의 저장소에 변경 사항이 적용됩니다. 그러나 매개 변수를 전달하면 --staged
, 변경 사항이 색인으로 이동합니다. 마지막으로 두 매개 변수를 모두 전달하면 변경 사항이 두 개의 각 위치로 이동합니다.
git 2.23에서 "git merge --quit
«, 예 :«– 중단», 분기 병합 프로세스를 중지하지만 작업 디렉토리는 그대로 둡니다. 이 옵션은 수동 병합 중 일부 변경 사항을 별도의 커밋으로 발행하는 것이 더 나은 경우 유용 할 수 있습니다.
명령 git clone
, git fetch
y git push
이제 그들은 연결된 (대체) 저장소에있는 커밋의 존재를 고려합니다.
옵션«git blame --ignore-rev
"Y"--ignore-revs-file
»사소한 수정을 가한 커밋 건너 뛰기 (예 : 서식 수정)
다른 한편으로 우리는 옵션의 추가를 찾을 수 있습니다 «git cherry-pick --skip
»충돌 타협 건너 뛰기 (기억 된 시퀀스의 아날로그«git reset
y git cherry-pick --continue
«)
이 버전에서 git log
이미 발생하고있는 것과 유사한 mailmap에 의해 변경된 사항을 기본적으로 고려합니다. git shortlog
.
차트 업데이트 작업 commit (core.commitGraph)
2.18에 제출 된 파일은 상당히 빨라졌습니다. 또한 여러 템플릿을 사용하는 경우 각 참조에 대해 git 속도를 높이고 다음에서 호출 수를 줄였습니다. auto-gc
en«git fetch --multiple
".
구성이 추가되었습니다. status.ahead뒤에, 옵션 설정«git status - [no-] ahead-behind
"연달아.
«git branch --list
»이제 로케일에 관계없이 목록 시작 부분에 항상 별도의 HEAD를 표시합니다.
이러한 개선 사항 외에도 이 새로운 버전의 Git은 이제 연결된 객체의 검증의 일부로 다른 솔루션의 참조를 사용할 수 있습니다. 저장소를 복제하고 복제 중 또는 다른 저장소에서 다른 저장소를 지정할 때 발생할 수 있습니다.
Si 당신은 그것에 대해 더 알고 싶어 당신은 상담 할 수 있습니다 다음 링크.