GIT

소프트웨어 스크린 샷:
GIT
소프트웨어 정보:
버전: 2.16.0 업데이트
업로드 날짜: 20 Jan 18
개발자: Junio C Hamano
라이센스: 무료
인기: 252

Rating: 2.5/5 (Total Votes: 2)

힘내 (Git)는 가장 널리 사용되는 분산 버전 관리 시스템 중 하나입니다. 전세계 개발자들이 VCS 서비스로 가장 많이 사용합니다. 터미널에서만 실행되지만 여러 프런트 엔드를 다운로드 할 수 있습니다.

최대 효율과 속도로 크고 작은 프로젝트를 처리 할 수있는 무료 오픈 소스 버전 제어 시스템 응용 프로그램입니다. 이 프로그램은 작고 빠르며 분산되어 있다고 쉽게 나타낼 수 있습니다.


명령 줄 옵션

이 프로그램에는 이동 중에도 누구나 쉽게 기억할 수있는 몇 가지 명령이 있습니다. 모든 작업은 로컬에서 수행되며 Linux 커널에서 작동하도록 설계되었습니다.

포함 된 명령은 add, bisect, branch, checkout, 복제, 커밋, diff, 패치, grep, 초기화, 로그, 병합, mv, 끌어 오기, 리베이스, 재설정, rm, 표시, 상태 및 태그입니다. 터미널 창에서 git --help 명령을 실행하여 각 명령이 무엇을하는지 쉽게 알 수 있습니다.


기능 요약

Git을 사용할 때 사용자는 파일, 체크 아웃 브랜치 또는 경로를 추가하고, 저장소를 복제하고, Git repos를 작성하고, 여러 개발 이력을 결합하고, 작업 트리 상태를 표시하고, 변경 사항을 기록하고, 목록을 작성하거나 목록을 작성할 수 있습니다. 가지를 삭제하십시오.

또한, 사용자는 커밋과 작업 트리 사이의 변경 사항을보고, 패턴과 일치하는 줄을 출력하고, 커밋 로그를보고, ref와 객체를 다운로드하고, 파일의 이름을 변경하거나 이동하고, 심볼릭 링크와 디렉토리를 이동하고, 원격 참조를 업데이트하고, 작업중인 트리의 파일.


다양한 그래픽 프런트 엔드가 존재합니다.

명령 행 전용 소프트웨어 인 경우에도 git-cola, SmartGit, GitEye, giggle 및 gitg와 같은 다양한 그래픽 사용자 인터페이스 (GUI)를 사용할 수 있습니다. 이 프로젝트는 값싼 로컬 브랜칭, 다중 워크 플로우 및 편리한 스테이징 영역을 제공함으로써 CVS, Subversion, ClearCase 및 Perforce와 같은 SCM (소프트웨어 구성 관리) 유틸리티를 능가합니다.


결론

요약하자면, Git은 번개가 빠른 성능과 배우기 쉽고 설치 공간이 매우 작은 무료 버전 제어 시스템입니다. Git을 사용하면 마찰없는 컨텍스트 스위칭, 역할 기반 코드 라인, 기능 기반 워크 플로우 및 일회용 실험을 할 수 있습니다.

이 릴리스의 새로운 기능 :

하나의 전체 라인을 strbuf로 읽는 도우미 기능은 특정 조건 하에서 EOF에서 실수로 OOM 오류를 발생 시켰습니다.
"cc : # cruft", "cc : a@dd.re.ss # cruft" "git send-email" 트레일러 섹션에서 카본 카피를 보내야한다고 알리는 올바른 방법입니다.
"gitk - bisect"로 회귀를 수정하십시오. 최근 업데이트로.
& quot; git commit-tree & lt; 파일 ","git commit-tree -F file " 그 파일의 내용을 그대로 전달하지 않았고, 끝에 불완전한 줄이 완성되었습니다. 후자는 전자의 동작과 일치하도록 업데이트되었습니다.
"git archive", 특히 pathspec과 함께 사용하면 Git 자체가 결코 그렇게하지 않더라도 출력에 빈 디렉토리가 저장됩니다. 이 문제가 수정되었습니다.
API 오류 교정은 GCC에서 경고를 스켈치하게합니다.
"git gc" lock 파일에서 pid / host를 읽거나 쓰면 동시에 두 개의 인스턴스를 실행하지 않게됩니다. 그것은 읽을 때 잘못된 fscanf () 형식을 사용하여 수정되었습니다.
테스트 링터는 & quot; echo -e & quot;를 싫어한다고 배웠습니다.

코드 cmp.std.c nitpick.
& quot; git describe - match & quot; v2.13 시리즈에서 여러 패턴을 사용하는 방법을 배웠지 만이 기능은 첫 번째 패턴 이후 패턴을 무시하고 전혀 작동하지 않았습니다. 이 문제가 수정되었습니다.
& quot; git cat-file - textconv & quot; 최근 수정 된 segfaulting이 수정되었습니다.
"기능 헤더"를 검출하는 내장 패턴은, HTML이 어떤 속성도없는 요소와 일치하지 않아 수정되었습니다.
& quot; git mailinfo & quot; 등호 뒤에 오는 두 글자가 16 진수가 아닌 경우 따옴표 붙은 인쇄 가능 및 쓰레기를 생성하는 데 느슨합니다. 이 문제가 수정되었습니다.
병합을위한 '-X'에 대한 문서는 오해의 소지가있어 "& quot; -s theirs & quot; 존재하지 않습니다.
Google 시스템의 이름을 & quot; 힘내 & quot; request-pull 스크립트의 출력.
valgrind로 식별되는 소수의 메모리 액세스 문제를 수정했습니다.
HPE NonStop에서 비정기적인 중단을 수정하기 위해 업스트림에서의 에뮬레이션에 대한 2015 년의 도덕적 대응을 백 포트에 백 포트합니다.& quot; 형식 = ... & quot; "git for-each-ref"옵션의 " 명령 (및 그 친구, 즉 "git branch / tag"의 리스팅 모드), "% (atom :)" (예 : "% (refname :)", "% (body :)")를 사용하여 대신 콜론과 그 뒤의 빈 문자열이없는 것으로 간주합니다.
& quot; color.ui = always & quot;의 사용자는 "git add -p"명령을 사용하여 내부적으로 패치를 생성 할 때 배관 명령을 사용하도록 변경 한 최근 변경 사항으로 인해 구성이 잘못되었습니다. 착색되어 (ㅎ) 쓸모 없게되었습니다. 이 문제가 수정되었습니다.
"git branch -M a b" 여러 작업 트리가 사용 중일 때 분기 a 또는 분기 b와 완전히 관련이없는 분기에서는 오작동이 발생합니다. 이 문제가 수정되었습니다.
& quot; git fast-export & quot; -M / -C 옵션을 사용하여 & quot; 복사 & quot; 동시에 수정 된 경로의 명령. 올바르지 않습니다.
체크 포인트 커맨드 "git fast-import" 수정 된 마지막 체크 포인트 이후에 적어도 하나의 객체가 생성되지 않는 한 ref 및 mark에 대한 업데이트를 플러시하지 않았습니다. 이러한 객체는 새 객체가 생성되지 않고 발생할 수 있기 때문입니다.

TravisCI를 구동하는 스크립트가 재구성되었으며 팁이 태그 된 분기에서 지출주기를 피하기위한 최적화가 구현되었습니다.
& quot; git fetch : & quot; Git v2.5부터 상대방이 이러한 요청을 받아 들일 때 문서 이름이 부적절한 경우 옆에 객체 이름을 허용합니다.
문자열의 끝을 오버런 한 대체 객체 저장소 목록을 읽도록 코드를 수정 한 2.11의 회귀가 수정되었습니다.

버전 2.15.1의 새로운 기능 :

하나의 전체 라인을 strbuf로 읽는 도우미 기능은 특정 조건 하에서 EOF에서 실수로 OOM 오류를 발생 시켰습니다.
"cc : # cruft", "cc : a@dd.re.ss # cruft" "git send-email" 트레일러 섹션에서 카본 카피를 보내야한다고 알리는 올바른 방법입니다.
"gitk - bisect"로 회귀를 수정하십시오. 최근 업데이트로.
& quot; git commit-tree & lt; 파일 ","git commit-tree -F file " 그 파일의 내용을 그대로 전달하지 않았고, 끝에 불완전한 줄이 완성되었습니다. 후자는 전자의 동작과 일치하도록 업데이트되었습니다.
"git archive", 특히 pathspec과 함께 사용하면 Git 자체가 결코 그렇게하지 않더라도 출력에 빈 디렉토리가 저장됩니다. 이 문제가 수정되었습니다.
API 오류 교정은 GCC에서 경고를 스켈치하게합니다.
"git gc" lock 파일에서 pid / host를 읽거나 쓰면 동시에 두 개의 인스턴스를 실행하지 않게됩니다. 그것은 읽을 때 잘못된 fscanf () 형식을 사용하여 수정되었습니다.
테스트 링터는 & quot; echo -e & quot;를 싫어한다고 배웠습니다.

코드 cmp.std.c nitpick.
& quot; git describe - match & quot; v2.13 시리즈에서 여러 패턴을 사용하는 방법을 배웠지 만이 기능은 첫 번째 패턴 이후 패턴을 무시하고 전혀 작동하지 않았습니다. 이 문제가 수정되었습니다.
& quot; git cat-file - textconv & quot; 최근 수정 된 segfaulting이 수정되었습니다.
"기능 헤더"를 검출하는 내장 패턴은, HTML이 어떤 속성도없는 요소와 일치하지 않아 수정되었습니다.
& quot; git mailinfo & quot; 등호 뒤에 오는 두 글자가 16 진수가 아닌 경우 따옴표 붙은 인쇄 가능 및 쓰레기를 생성하는 데 느슨합니다. 이 문제가 수정되었습니다.
병합을위한 '-X'에 대한 문서는 오해의 소지가있어 "& quot; -s theirs & quot; 존재하지 않습니다.
Google 시스템의 이름을 & quot; 힘내 & quot; request-pull 스크립트의 출력.
valgrind로 식별되는 소수의 메모리 액세스 문제를 수정했습니다.
HPE NonStop에서 비정기적인 중단을 수정하기 위해 업스트림에서의 에뮬레이션에 대한 2015 년의 도덕적 대응을 백 포트에 백 포트합니다.& quot; 형식 = ... & quot; "git for-each-ref"옵션의 " 명령 (및 그 친구, 즉 "git branch / tag"의 리스팅 모드), "% (atom :)" (예 : "% (refname :)", "% (body :)")를 사용하여 대신 콜론과 그 뒤의 빈 문자열이없는 것으로 간주합니다.
& quot; color.ui = always & quot;의 사용자는 "git add -p"명령을 사용하여 내부적으로 패치를 생성 할 때 배관 명령을 사용하도록 변경 한 최근 변경 사항으로 인해 구성이 잘못되었습니다. 착색되어 (ㅎ) 쓸모 없게되었습니다. 이 문제가 수정되었습니다.
"git branch -M a b" 여러 작업 트리가 사용 중일 때 분기 a 또는 분기 b와 완전히 관련이없는 분기에서는 오작동이 발생합니다. 이 문제가 수정되었습니다.
& quot; git fast-export & quot; -M / -C 옵션을 사용하여 & quot; 복사 & quot; 동시에 수정 된 경로의 명령. 올바르지 않습니다.
체크 포인트 커맨드 "git fast-import" 수정 된 마지막 체크 포인트 이후에 적어도 하나의 객체가 생성되지 않는 한 ref 및 mark에 대한 업데이트를 플러시하지 않았습니다. 이러한 객체는 새 객체가 생성되지 않고 발생할 수 있기 때문입니다.

TravisCI를 구동하는 스크립트가 재구성되었으며 팁이 태그 된 분기에서 지출주기를 피하기위한 최적화가 구현되었습니다.
& quot; git fetch : & quot; Git v2.5부터 상대방이 이러한 요청을 받아 들일 때 문서 이름이 부적절한 경우 옆에 객체 이름을 허용합니다.
문자열의 끝을 오버런 한 대체 객체 저장소 목록을 읽도록 코드를 수정 한 2.11의 회귀가 수정되었습니다.

버전 2.15.0의 새로운 기능 :

하나의 전체 라인을 strbuf로 읽는 도우미 기능은 특정 조건 하에서 EOF에서 실수로 OOM 오류를 발생 시켰습니다.
"cc : # cruft", "cc : a@dd.re.ss # cruft" "git send-email" 트레일러 섹션에서 카본 카피를 보내야한다고 알리는 올바른 방법입니다.
"gitk - bisect"로 회귀를 수정하십시오. 최근 업데이트로.
& quot; git commit-tree & lt; 파일 ","git commit-tree -F file " 그 파일의 내용을 그대로 전달하지 않았고, 끝에 불완전한 줄이 완성되었습니다. 후자는 전자의 동작과 일치하도록 업데이트되었습니다.
"git archive", 특히 pathspec과 함께 사용하면 Git 자체가 결코 그렇게하지 않더라도 출력에 빈 디렉토리가 저장됩니다. 이 문제가 수정되었습니다.
API 오류 교정은 GCC에서 경고를 스켈치하게합니다.
"git gc" lock 파일에서 pid / host를 읽거나 쓰면 동시에 두 개의 인스턴스를 실행하지 않게됩니다. 그것은 읽을 때 잘못된 fscanf () 형식을 사용하여 수정되었습니다.
테스트 링터는 & quot; echo -e & quot;를 싫어한다고 배웠습니다.

코드 cmp.std.c nitpick.
& quot; git describe - match & quot; v2.13 시리즈에서 여러 패턴을 사용하는 방법을 배웠지 만이 기능은 첫 번째 패턴 이후 패턴을 무시하고 전혀 작동하지 않았습니다. 이 문제가 수정되었습니다.
& quot; git cat-file - textconv & quot; 최근 수정 된 segfaulting이 수정되었습니다.
"기능 헤더"를 검출하는 내장 패턴은, HTML이 어떤 속성도없는 요소와 일치하지 않아 수정되었습니다.
& quot; git mailinfo & quot; 등호 뒤에 오는 두 글자가 16 진수가 아닌 경우 따옴표 붙은 인쇄 가능 및 쓰레기를 생성하는 데 느슨합니다. 이 문제가 수정되었습니다.
병합을위한 '-X'에 대한 문서는 오해의 소지가있어 "& quot; -s theirs & quot; 존재하지 않습니다.
Google 시스템의 이름을 & quot; 힘내 & quot; request-pull 스크립트의 출력.
valgrind로 식별되는 소수의 메모리 액세스 문제를 수정했습니다.
HPE NonStop에서 비정기적인 중단을 수정하기 위해 업스트림에서의 에뮬레이션에 대한 2015 년의 도덕적 대응을 백 포트에 백 포트합니다.& quot; 형식 = ... & quot; "git for-each-ref"옵션의 " 명령 (및 그 친구, 즉 "git branch / tag"의 리스팅 모드), "% (atom :)" (예 : "% (refname :)", "% (body :)")를 사용하여 대신 콜론과 그 뒤의 빈 문자열이없는 것으로 간주합니다.
& quot; color.ui = always & quot;의 사용자는 "git add -p"명령을 사용하여 내부적으로 패치를 생성 할 때 배관 명령을 사용하도록 변경 한 최근 변경 사항으로 인해 구성이 잘못되었습니다. 착색되어 (ㅎ) 쓸모 없게되었습니다. 이 문제가 수정되었습니다.
"git branch -M a b" 여러 작업 트리가 사용 중일 때 분기 a 또는 분기 b와 완전히 관련이없는 분기에서는 오작동이 발생합니다. 이 문제가 수정되었습니다.
& quot; git fast-export & quot; -M / -C 옵션을 사용하여 & quot; 복사 & quot; 동시에 수정 된 경로의 명령. 올바르지 않습니다.
체크 포인트 커맨드 "git fast-import" 수정 된 마지막 체크 포인트 이후에 적어도 하나의 객체가 생성되지 않는 한 ref 및 mark에 대한 업데이트를 플러시하지 않았습니다. 이러한 객체는 새 객체가 생성되지 않고 발생할 수 있기 때문입니다.

TravisCI를 구동하는 스크립트가 재구성되었으며 팁이 태그 된 분기에서 지출주기를 피하기위한 최적화가 구현되었습니다.
& quot; git fetch : & quot; Git v2.5부터 상대방이 이러한 요청을 받아 들일 때 문서 이름이 부적절한 경우 옆에 객체 이름을 허용합니다.
문자열의 끝을 오버런 한 대체 객체 저장소 목록을 읽도록 코드를 수정 한 2.11의 회귀가 수정되었습니다.

버전 2.14.1의 새로운 기능 :

이 릴리즈는 & quot; ssh : //...quot; Git v2.7.6의 URL

버전 2.9.3의 새로운 기능 :

* 커밋 객체의 내용을 가져 와서 제목 줄을 찾은 도우미 함수는 다른 코드 패쓰가 일반적으로하는 것처럼 선행 빈 줄을 무시하지 않았습니다. 일치하는 선행 공백 행을 무시하도록하십시오.
힘내는 "git add -N"이 추가 된 경로에 대해 색인의 내용이 무엇인지 알지 못하므로 "git grep --cached"는 히트를 표시하면 안됩니다 (또는 히트 부족 표시, -L과 함께). path이지만 그 논리는 "git grep"에 적용되지 않습니다. 즉, 작업 트리 파일에서 검색합니다. 그러나 우리는 실수로 그렇게했으며, 이는 바로 시정되었습니다.
"git rebase -i --autostash"는 작업이 중단되었을 때 자동 숨겨진 변경 사항을 복원하지 않았습니다.
"git commit --amend --allow-empty-message -S"메시지 본문이없는 커밋은 커밋 개체의 헤더가 끝나는 곳을 잘못 식별 할 수 있습니다.
최종 사용자가 글자 그대로 고정 너비 글꼴로 입력해야하는 문자 집합 문자열에 대한 마크 업 업데이트가 많습니다.
오랜 시간 동안 필자는 Windows에서 fprintf / fputs를 사용하는 경우에만 컬러 출력이 작동한다는 코드 주석을 전달했습니다.이 fprintf / fputs는 Windows에서 더 이상 사용되지 않습니다."gc.autoPackLimit"을 1로 설정하면 팩이 하나 밖에없는 경우 리 패키징이 발생하지 않아야하지만 코드 수가 제대로 계산되지 않고 다시 계산됩니다.
"git am"의 한 부분은 괴상한 도우미 기능을 가지고있어서 "우리"가 아닌 성별에 중립적이지 않으며 외부 물건이있는 시스템의 나머지 부분과도 일치하지 않는 "우리"가있는 것을 부르는 것과는 반대로 "우리"와는 대조적으로 "그들의 것"이라고 불리는 usuall.
테스트 프레임 워크는 exit_code가 예상 신호에 의해 종료되는 것을 확인하는 새로운 도우미 인 test_match_signal을 배웠습니다.
"git blame -M"은 파일 내에서 옮겨진 한 줄을 놓쳤습니다.
병렬 서브 모듈 작업과 관련된 최근 소개 된 코드 패쓰를 수정하여 너무 일찍 읽기를 포기하고 코너 케이스 조건에서 쓰려고 시도하는 동안 CPU 낭비를 초래할 수 있습니다.
"git grep -i"는 non-ascii 로켈에서 대소 문자를 올바르게 접을 수 있도록 배웠습니다.
무조건 "mktemp"를 사용한 테스트는 명령이 반드시 모든 곳에서 사용할 수있는 것은 아니라는 것을 알게되었습니다."git blame file"은 커밋되지 않은 커밋되지 않은 "file"내용의 줄을 검사 할 수 있도록 허용했지만 "file"이 현재 커밋에 나타나지 않으면 거부합니다. 기존 파일의 이름을 변경하여 "파일"을 만들었지 만 변경 사항이 커밋되지 않은 경우이 제한이 불필요하게 좁 힙니다.
"git add -N dir / file & git write-tree"는 "file"다음에 동일한 디렉토리에 다른 경로가있을 때 잘못된 트리를 생성합니다.
"git fetch http : // user : pass @ host / repo ..."는 userinfo 부분을 문질러 썼지 만 "git push"는하지 않았습니다.
"git diff --ignore-space-at-eol"오작동을 일으킨 오래된 버그가 수정되었습니다.
"git notes merge"는 경로가 존재하는지 (존재한다면 실패하고) 쓰기를위한 경로를 여는 코드를 가지고 있습니다. O_EXCL로 open으로 바꿉니다.
"git pack-objects"와 "git index-pack"은 대부분 packfile에있는 객체의 오프셋에 대해 말할 때 off_t와 함께 작동하지만 의도하지 않은 결과를 가져 오는 값으로 "unsigned long"을 사용하는 곳이 몇 군데 있습니다 절단."git daemon"에 대한 최근 업데이트는 소켓 수준 KEEPALIVE를 활성화하려고 시도하지만 inetd를 통해 생성 될 때 표준 입력 파일 설명자가 반드시 소켓에 연결되지는 않습니다. setsockopt ()에서 ENOTSOCK 오류를 억제하십시오.
최근 FreeBSD는 / usr / bin / perl에서 perl을 사용할 수 없게 만들었습니다. 지나치게 오래된 FreeBSD 릴리즈에서는 기본 경로를 / usr / local / bin / perl로 바꾸십시오.
"git status"는 충돌하는 병합 중에 "병합 - 병합"을 제안하는 것을 배웠습니다. 충돌하는 병합 중에 이미 "rebase - 병습"을 제안하는 것처럼 말입니다.
.c / .h 소스는 .gitattributes 파일에 "git diff -W"와 친구들이 더 잘 작동하도록 표시되어 있습니다.
기존의 autoconf가 pthread 라이브러리와 링크 할 필요성을 테스트 한 결과 pthread 라이브러리의 모든 기능을 검사하지 않았습니다. 최근의 FreeBSD는 libc에서 몇 가지 기능을 가지고 있지만 다른 것들은 그렇지 않습니다. 우리는 실수로 libc와의 링크가 충분하다고 생각합니다.
Travis CI 테스트에서 http 데몬 테스트를 허용합니다.parse_options_concat () API 함수의 사용자는 미리 여분의 슬롯을 할당하고 지원되는 옵션 세트를 동적으로 결정할 때 OPT_END ()로 채워야합니다. 그러면 코드가 오류가 발생하기 쉽고 읽기가 어렵습니다. 이것은 "struct option"배열의 새로운 복사본을 할당하고 반환하기 위해 API를 조정하여 수정되었습니다.
"git rm"에서 strbuf를 사용하여 제거 할 파일 이름을 빌드하는 것이 다소 차선책 이었지만 수정되었습니다.
"git commit --help"는 "--no-verify"가 단지 pre-commit 훅을 건너 뛰는 것에 불과하며 commit-msg 훅을 건너 뛰었다 고 말하지 않았다.
Git v2.9의 "git merge"는 기본적으로 관련이없는 일련의 역사를 병합하는 것을 금지하는 것으로 가르쳐졌지만, 정확하게는 "git subtree"(contrib /에서)의 "--rejoin"모드가 원하는 종류의 것입니다 . "git subtree"는 "--allow-unrelated-history"옵션을 사용하여 기본값을 덮어 쓰도록 가르쳐 왔습니다.
"git persistent-https"helper (contrib /)의 빌드 절차가 업데이트되어 Go의 최신 버전으로 빌드 할 수 있습니다."git diff $ treeA $ treeB"에서 사용 된 최적화가 작업 트리에서 이미 체크 아웃 된 복사본을 빌려주기 위해 비교되는 BLOB와 동일하다고 알려져있을 때,이 파일의 open / mmap이 델타를 팽창시키고 적용하는 것을 객체 저장소에서 읽는 것보다 빠릅니다. 이것은 체크 아웃 된 복사본이 최적화의 전체적인 점을 뛰어 넘는 변환 - 투 - 자식 변환 (클린 필터 포함)을 거쳐야하는 경우에도 시작되었습니다. 변환이 필요할 때 최적화가 비활성화되었습니다.
"git -c grep.patternType = extended log --basic-regexp"grep 기계에 액세스하는 내부 API가 잘 설계되지 않았기 때문에 잘못되었습니다.
Windows 포트는 lstat (2) 에뮬레이션에 의해 반환 된 값에서 inum이 부족하기 때문에 t4130에서 일부 테스트에 실패했습니다.
적절한 HTML 출력을 위해 "gitweb"출력의 커밋에 대한 태그 / refs로 표시된 레이블의 문자가 올바르게 이스케이프 처리됩니다.
FreeBSD는 디렉토리의 mtime을 묻는 메시지가 나타나면 추적 할 수없는 캐시 코드를 느린 경로로 되돌려 놓았습니다. t7063의 테스트는 패스트 경로의 동작을 확인하려고했기 때문에 실패했습니다.

netmalloc (compat /) 라이브러리에 대한 스켈치 컴파일러 경고.
hashmap_entry가 다른 고려 사항없이 안전하게 버려 질 수 있다면 hashmap에 대한 API 문서는 명확하지 않습니다. 그렇게하는 것이 안전하다고 진술하십시오.
최근에 커밋 기계로 내부 호출을하기 시작한 "git am"의 예기치 않은 회귀는 많은 패치를 적용하는 데 몇 초가 걸렸지 만 커밋 결과의 커미터 타임 스탬프는 모두 같은.
"git difftool ..."하위 디렉토리에서 시작하여 해당 디렉토리와 관련된 경로를 해석하지 못했던 문제가 수정되었습니다.

버전 2.9.1의 새로운 기능 :

- [init-] 시간 제한을 지정하지 않고 "git daemon"을 실행하면 자동으로 오프라인 상태가되는 클라이언트의 연결이 오랜 시간 동안 중단되어 자원을 낭비 할 수 있습니다. 소켓 수준의 KEEPALIVE가 활성화되어있어 OS가 이러한 연결 실패를 인식 할 수 있습니다.
`git log` 패밀리의 명령은 사용자 정의 형식 문자열에서 % C (자동)를 사용합니다. 이것은 출력이 tty에 연결되어 있지 않을 때 --no-color 또는 --color = auto를 무시하고 무조건 색상을 켜 버렸습니다. 이것은 포맷이 진정으로 "자동"으로 동작하도록 수정되었습니다.
walk-length가 "-n"옵션으로 제한된 "git rev-list --count"는 비트 맵 인덱스를보기 위해 최적화 된 카운팅과 잘 맞지 않습니다.
"git show -W"( "funcname"패턴과 일치하는 행으로 구분 된 전체 기능을 다루기 위해 심술쟁이를 확장 함). 변경 사항이 파일의 끝에 전체 기능을 추가했을 때 전체 파일을 표시하는 데 사용되며 이는 수정되었습니다. .
리터럴 명령, 구성 변수 및 환경 변수가 고정 너비 글꼴로 일관되게 조판되고 맨 페이지에 굵게 표시되도록 설명서 세트가 업데이트되었습니다.
2.3 일 후에 추가 된 "git svn propset"부속 명령이 문서화되었습니다.문서는 "GPG"의 철자를 일관되게 시도합니다. 특정 프로그램 이름을 참조 할 때 "gpg"가 사용됩니다.
"git reflog"는 분기 생성 이벤트 (일명 "태어나지 않음")를 나타내는 엔트리를 보았을 때 멈춰서 마치 reflog가 잘린 것처럼 보입니다.
git-prompt scriptlet (contrib /에 있음)은 "set -u"를 사용하는 사람들에게는 친숙하지 않았습니다.
할당되지 않은 양의 데이터를 스택에 배치하기 위해 alloca (3)를 사용하는 코드 경로가 업데이트되지 않도록 업데이트되었습니다.
"git update-index --add --chmod = + x file"은 이스케이프 해치 (escape hatch)로 사용할 수 있지만 정기적으로 사용해야하는 사람들에게는 강제로 사용할 수 없습니다. 대신 "git add --chmod = + x file"을 사용할 수 있습니다.
gnome-keyring 개선 사항 (contrib /에서)
"git status"는 "working tree"를 의미 할 때 "working directory"라고 말합니다.
부적절한 FreeBSD 쉘에 대한 설명은 버전 번호 (9.x 이전에는 깨졌으며 새로운 버전은 정상 임)로 명확 해졌습니다.
"git cherry-pick A"는 태어나지 않은 가지에서 일했지만 "git cherry-pick A..B"는 그렇지 않았습니다.
"git add -i / -p"는 diff.compactionHeuristic 실험 노브를 기리는 법을 배웠습니다. 사용자는 "git diff"출력과 동일한 덩어리로 작업 할 수 있습니다."log --graph --format =" "% & gt; | (N)"은 터미널의 왼쪽 가장자리를 기준으로 한 폭을 지정하고, 조상 그래프 섹션의 오른쪽에있는 텍스트를 그리는 영역과 관련이 없음을 알았습니다 . 또한 이제는 열 제한이 오른쪽 경계를 기준으로하는 음수 N을 허용합니다.
"git fetch"에서 참조를 가져 오는 메모리 조각에 대한 소유권 규칙은 엉망이되어 정리가 완료되었습니다.
"git bisect"는 이등분이 범인을 발견했을 때 "git diff-tree"를 내부적으로 호출하지만,이 호출은 데이터 구조를 초기화하여 diff-tree API에 올바르게 전달하지 못했습니다.
우리가 GPG 서명을 사용하는 다양한 데이터 형식 (및 유효성 검사 방법)이 문서화되었습니다.
v2.9의 의도하지 않은 회귀를 수정하면 하위 모듈의 하위에 호스트되는 많은 서버 인스턴스가 준비되지 않은 하위 모듈도 강제 복제하여 하위 모듈로 재발생하는 "복제 - 깊이"가 손상됩니다.
': $ {VAR = default}'의 관용적 인 사용에 불필요하게 낭비되는 것을 수정하여 큰 따옴표로 묶지 않고 기본값을 설정하십시오.

일부 플랫폼 관련 코드에는 수정되지 않은 매개 변수를 사용하지 않는 C 함수의 ANSI가 아닌 엄격한 선언이 포함되어 있습니다.
로컬 시간대 오프셋을 표시하는 데 사용 된 내부 코드는 2100 년이 넘는 시간 소인을 처리 할 준비가되지 않았으며 호출자에게 잘못된 오프셋 값을 부여했습니다. 대신 +0000을 사용하는 것이 좋을 것입니다. 그리고 "git log"를 중단하는 대신이 경우에 사용하십시오.
테스트 스위트에서 readlink (1)를 네 번 호출 한 것은 테스트가 명령없이 시스템에서 실행될 수 있도록 재 작성되어 있습니다 (나머지는 valgrind 테스트 프레임 워크 및 t9802에 있음).
t / perf에는 / usr / bin / time과 GNU 확장이 필요합니다. 그 호출은 Darwin에서 "gtime"으로 업데이트됩니다.
분기 접두사로 인해 생략 된 경로를 잘못보고하는 자세한 모드에서 실행되는 동안 "git p4"가 발생하는 버그가 수정되었습니다. 명령은 _inside_ 인 경로에 대해 "접두사 외부의 파일 무시"라고 설명했습니다.
최상위 문서 "git help git"은 여전히 ​​존재하지 않는 Google 코드 저장소에 호스팅 된 문서 세트를 계속 지적했습니다. 대신 https://git.github.io/htmldocs/git.html을 가리 키도록 업데이트하십시오.

버전 2.9.0의 새로운 기능 :



GIT 2.8.1의 새로운 기능 (2016 년 4 월 5 일)

버전 2.8.1의 새로운 기능 :



"make rpmbuild"타겟은 입력 된 git.spec.in이 최근에 이름이 바뀐 파일과 일치하도록 업데이트되지 않았기 때문에 깨졌습니다. 이 문제가 수정되었습니다.

2.7.3 버전의 새로운 기능 :

전통적으로, 작업 트리의 내용에 작동 명령을 시도 테스트는 자신의 파일 이름에 "worktree"로 지명되었다, 그러나 그 시험도 유사하게 명명 된 "자식 worktree"하위 명령, 최근의 추가와 함께, 그것은 열심히에이되었다 그들을 구분해라. 전통적인 테스트는 이름을 바꾸려는 시도에서 대신 "작업 트리"를 사용하도록 이름이 바뀌 었습니다.
많은 코드 경로는 git_config_set ()에서 반환 값을 확인하는 것을 잊어 버립니다. 구성 변수를 설정하지 못했을 때 우리가 진행하지 않도록 함수가 die ()로 만들어졌습니다.
내부의 비동기 프로세스에 쓰는 동안 오류를 처리하는 것이 더욱 강력 해져서 테스트에서 조각난 현상이 줄어 듭니다.
"자식 쇼 'HEAD : 푸 [BAR] 바즈'"즉 트리 객체에 와일드 카드 문자와 경로 이름에 의해 명명 된 개체입니다 레브로 인수를 해석하지 않았다.
"git rev-parse --git-common-dir"하위 트리에서 실행될 때 작동하지 않는 작업 트리 기능에 사용됩니다.
명령이 C로 다시 작성되었을 때 "V (iew)"대화 형 "자식 오전 -i"명령의 하위 명령은 2.6.0 기간에 부서졌다"git merge-tree"는 "양측이 추가했다"는 충돌을 사용하여 "양측이 추가 한 공통 부분을 가지고 있으며 3 방향 병합"논리를 가진 가짜 조상 파일을 만듭니다. 이 시스템의 나머지 부분에서 사용되는 "가짜 공통 조상 파일"로 빈 "blob과 함께"3 방향 병합 "방식을 사용하도록 업데이트되었습니다.
약간 까다 롭습니다 fill_textconv () API의 메모리 소유권 규칙은 조금 더 잘 문서화되었습니다.
이 문서에서는 push.default 구성을 설정하지 않은 경우 '단순한'모드가 "git push"의 기본값임을 명확히 밝히지 않았습니다.
GNU grep의 최근 버전은 입력에 임의의 바이너리 데이터가 포함되어있는 경우에 유용합니다. 테스트를 다시 작성하여 문제를 회피하십시오.
도우미 함수 "git submodule"은 v2.7.0부터 하위 명령 (예 : "submodule add")에 주어진 pathspec 인수와 일치하는 모듈을 나열하기 위해 사용됩니다.
저장소 설정 파일에서 값을 설정하는 "git config section.var value"는 저장소 외부에서 실행되었을 때 실패했지만 그 이유를 올바르게 말하지 않았습니다.

pack idx 파일에 저장된 오프셋을 사용하여 팩 데이터를 읽는 코드가 더 신중하게 작성되어 idx에있는 데이터의 유효성을 확인합니다.

2.7.2 버전의 새로운 기능 :

저수준 병합 기계는 CRLF 라인 종단을 사용하여 자체적으로 CRLF 라인 종결 된 병합 된 내용에 충돌 마커를 삽입 할 것을 가르쳐 왔습니다.
"git worktree"는 최종 사용자가 Git을 알리지 않고 작업 영역을 다른 곳으로 이동하여 발생할 수있는 불일치를 자동으로 수정하려고 시도한 코드가 잘못되었습니다 (원래 저장소는 작업 트리에 대한 백 포인터를 유지해야하지만 "mv" 사실에 익숙하지 않은 사용자는 분명히 조정하지 않을 것입니다.) 실제로 트리거되었을 때 상황이 악화되었습니다.
"git push - force-with-lease"는 푸시가 강제 (또는 빨리 감기) 할 필요가 있는지보고하도록 가르쳐 왔습니다.
테스트 스크립트에 사용 된 에뮬레이트 된 "예"명령은 사용되지 않는 불필요한 출력을 생성하는 데 너무 많은 시간을 소비하지 않도록 조정되어 Windows에서 테스트를하는 사람들이 파이프 버퍼를 채울 때까지 멈추지 않는 곳에서 SIGPIPE.
"git mergetool"에 대한 vimdiff 백엔드는 왼쪽에서 오른쪽으로 읽은 다음 위로 아래로 버퍼를 할당하고 버퍼를 로컬 기반에 "정신적으로"할당하도록 순서대로 버퍼를 조정하고 번호를 매기도록 조정되었습니다. 해당 순서에 따라 Windows를 병합합니다.

"git clean"에 대한 문서가 수정되었습니다; .git / modules / *는 절대로 두 번 "-f"를 사용하여 제거됩니다.
"add -N"으로 인덱스에 대해 알려준 경로는 아직 색인에 포함되어 있지 않지만 몇 가지 명령은 이미 유해한 방식으로 작동합니다.
또한 작은 문서 및 테스트 업데이트가 포함되어 있습니다.

2.6.4 버전의 새로운 기능 :

"configure"스크립트는 -lpthread에 대해 올바르게 테스트하지 않았기 때문에 일부 링커가 혼란 스럽습니다.
socks proxy를 통한 http / https에 대한 지원을 추가하십시오.
POSIX가 아닌 경로를 사용하여 $ SHELL 변수를 다시 쓸 수있는 Windows 용 이식성 수정.
이제는 모든 후크가 SIGPIPE에 대해 불평하지 않고 표준 입력을 무시하도록 일관되게 허용합니다.
contrib 스크립트에서 쉘 인용 부호를 수정했습니다.
v2.6.1의 주제에 대한 이식성 테스트를 테스트합니다.
일부 http 구성 변수에서 물결표 확장을 허용합니다.
유용한 특수한 경우를 제공하십시오 "diff / show --word-diff-regex =." 문서의 한 예입니다.
필터 브랜치의 코너 케이스를 수정했습니다.
git-p4가 분리 된 헤드에서 작동하도록 만듭니다.
"--verbose"없이 "check-ignore"에 대한 문서 설명.
사용자가 P4Submit.applyCommit ()에서 제출을 취소 할 때 작업 트리가 정리 된 것처럼 "p4 submit"이 실패하면 정리를 정리하십시오.
리포지토리에 해당 .pack 파일이없는 나머지 .idx 파일을 사용하면 성능이 저하 될 수 있습니다. "git gc"는 그들을 잘라내는 법을 배웠다.

"dir-diff"기능을 위해 임시 디렉토리의 작업 트리 측을 준비하는 코드는 코드가 이미 특수한 경우와 같이 심볼릭 링크를 임시 영역으로 복사 (또는 심볼릭 링크) 할 필요가 없다는 사실을 잊어 버리고 그것을 덮어 쓰지 않습니다. 게다가 기호 링크 대상의 객체 이름을 계산하는 것은 잘못되었습니다. 존재하지도 않거나 디렉토리 일 수도 있습니다.
"git rebase --no-autostash"가 누락되었으므로 명령 줄에서 구성된 rebase.autostash 변수를 무효화 할 방법이 없습니다.
Git 통역사가 Git 저장소 외부에서 실행되도록 허용합니다.
고아 또는 태어난 지류에있을 때도 셸 프롬프트에 올바른 "더티 (dirty)"마커를 생성하십시오.
몇몇 코너 케이스는 "git status"에서 행해지는 문자열 매칭에서 수정되었습니다.
Apple의 SHA1_Update () 암호화 구현은 한 번에 4GB를 넘지 않으며, 이제는 컴파일 타임으로 해결할 수 있습니다.

버전 2.5.3의 새로운 기능 :


몇 가지 수준의 하위 디렉토리가있는 경로가 포함 된 경우 실험되지 않은 캐시가 저장되지 않은 기능이 버그가있었습니다.
최근 버전의 스크립트 "git am"은 "git am --skip"codepath에서 성능 회귀를 나타내 었으며, "master"앞부분에 내장 된 버전에는 더 이상 존재하지 않습니다. 2.5.x 유지 관리 트랙 및 그 이전 버전에 나타나는 마지막 스크립트 버전의 회귀 문제를 수정하십시오.

버전 2.4.6의 새로운 기능 :



"git fetch --depth ="및 "git clone --depth ="기능을 지원하지 않는 업로드 팩에 대해서도 얕은 전송 요청을 보냈습니다.
"git fsck"는 reflog에 기록 된 누락되거나 유효하지 않은 객체를 무시하는 데 사용됩니다.
tcsh 완료는 bash 스크립트 릿을 작성하지만 noclobber가 설정된 사용자에게는 실패합니다.
최근 Mac OS X 업데이트는 샘플 pre-auto-gc 스크립트에서 기기가 AC 전원에 연결되어 있는지 감지하기 위해 로직을 중단시킵니다.
"git format-patch --ignore-if-upstream A..B"는 경계 커밋으로 태그를 먹이는 것을 좋아하지 않았습니다.
또한 typofixes, 설명서 업데이 트와 사소한 코드가 포함되어 있습니다
청소.

버전 2.4.2의 새로운 기능 :

"$ old에서 도달 할 수있는 모든 것이 이미 기존의 ref에 연결되어 있는지 확인하기 위해"git rev-list --objects $ old --not --all "명령은 매우 비효율적이었다.
v2.2에서 소개 된 "hash-object - literal"은 정말 긴 오브젝트 유형 이름을 사용할 준비가되지 않았습니다.
할 일이 없을 때 "git rebase --quiet"는 아주 조용하지 않았습니다.
"log - decorate ="매개 변수 값에 대한 완료가 올바르지 않습니다.
"filter-branch"손상된 커밋 로그 메시지는 플랫폼에서 불완전한 행으로 끝나며 일부 "sed"구현은 그러한 행을 변경합니다. "sed"를 사용하지 않으려 고 노력하십시오.
"git daemon"이 NO_IPV6 설정 (2.4의 회귀)에 따라 소스에서 빌드되지 않습니다.
"git stash pop / apply"는 작업 트리가 깨끗하고 인덱스가 깨끗한 것을 잊어 버렸습니다. 후자는 숨긴 응용 프로그램이 충돌 할 수 있고 색인이 충돌 해결에 사용되므로 중요합니다.우리는 $ GIT_EXEC_PATH를 prepended했고 "git"경로는 거의 영원히 서브 프로그램과 후크를 호출 할 때 $ PATH에 (일반적으로 "/ usr / bin") 설치되어 있지만 후자가 지원하려고했던 원래의 유스 케이스는 세미 가짜였습니다 ( 즉, / opt / foo / git에 git을 설치하고 $ PATH에 / opt / foo를 넣지 않고 실행하고 더 중요한 것은 힘차게 더 많은 주류로 성장했기 때문입니다 (예 : 사용자가 자신의 $ PATH). 사람들이 의존하는 명령 검색 순서를 방해 할 수 있으므로 (예 : / usr / bin에있는 Git와 관련이없는 프로그램 버전이 마음에 들지 않기를 바랄 수 있습니다. 예를 들어, "git"이 $ PATH에 설치되어있는 경로를 앞에 두지 마십시오. / usr / local / bin에 다른 디렉토리를 지정하고 $ PATH에서 이전 디렉토리를 먼저 가지고).
또한 typofixes, 설명서 업데이트 및 사소한 코드 정리가 포함되어 있습니다.

유사한 소프트웨어

SVN-Pusher
SVN-Pusher

3 Jun 15

Scunch
Scunch

12 May 15

xdelta
xdelta

3 Jun 15

Sventon
Sventon

3 Jun 15

코멘트 GIT

댓글을 찾을 수 없습니다
코멘트를 추가
이미지를 켜십시오!