Git2.5 업데이트 정보
4053 단어 Git
개요
아래의 글을 보고 Giit의 버전 2.5에 어떤 기능이 추가되었는지 조사했습니다.
Git 2.5, including multiple worktrees and triangular workflows- https://github.com/blog/2042-git-2-5-including-multiple-worktrees-and-triangular-workflows
이번에는worktree 명령과 추적 지점을 나타내는 문법사탕만 총결산하였다.
검증하기 전에 Giithub에 있는 물건을 직접 설치했습니다.
bash$ git clone https://github.com/git/git/
$ cd git
$ make install
worktree
로컬 창고로 여러 개의 관리를 하려면 이 상황이 편리할 것 같다
Git2.4까지 하면 아래처럼 전문적으로 clone 관리가 필요합니다.
bash$ git clone [email protected]:totomo/test.git test1
$ git clone [email protected]:totomo/test.git test2
worktree 명령을 사용하면 지정된 곳에서 다른 로컬 창고를 만들 수 있습니다.
bash# HEADから ~/test2にtest2をカレントブランチとしたローカルリポジトリを複製
$ git worktree add ~/test2
# ~/test2にmasterのHEADの親コミットから切ったtest2というブランチをカレントブランチとするローカルリポジトリを複製
$ git worktree add ~/test2 master^
# ../test2にmasterのHEADの親コミットから切ったhotfixというブランチをカレントブランチとするローカルリポジトリを複製
$ git worktree add ~/test2 -b hotfix master^
# ../test3にすでに他のworktreeコマンドで生成されたローカルリポジトリでcheckoutされているhotfixというブランチをカレントブランチとするローカルリポジトリを複製
$ git worktree add ~/test3 -f hotfix
git clone 복사 때와 달리 분기별 상태(HEAD 참조 대상이 해시를 제출하고 분기가 늘어날 때) 등이 공유됩니다.-f
를 추가하지 않으면 다른 worktree
명령으로 생성된 로컬 창고에 cheeckout의 지점을 지정하면 욕을 먹을 수 있으니 주의해야 한다--detach
무명분지를 끊는 것도 선택할 수 있다.
발표 전clone
에 습관이 된 사람이나 worktree
지령을 대체할 수 있다.
그러나 실험적인 물건으로 몇 개의 버그가submodule를 포함하는 창고에서 이용을 추천하지 않기 때문에 인터페이스는 사용자의 의견에 따라 앞으로도 변경될 수 있다.
해보도록 하겠습니다.
bash#worktree作成
$ pwd
/Users/toku/test
$ git worktree add ~/test2
Enter /Users/toku/test2 (identifier test2)
Switched to a new branch 'test2'
# test2ブランチにコミット
$ cd ../test2
$ git commit -am "Add empty modification" --allow-empty
$ $git rev-list HEAD -1
e0da2d47eb2dff09fe75f8ae87669b6bf9306731
# 元のディレクトリにtest2ブランチへのコミットが共有されているか確認
$ cd ../test
$ git rev-list test2 -1
e0da2d47eb2dff09fe75f8ae87669b6bf9306731
shorthand <reference>@{push} <reference>@{push}
이런 표시는 upstream 지점을 지정할 수 있습니다.
예를 들어 마스터 지점의 추적 지점이 HEAD와 로컬 창고의 마스터 지점의 HEAD에서 제출한 차이는
bash$ git log master@{push}...master
#カレントブランチがmasterの場合は、省略可能
$ git log @{push}...master
처음 생략<reference>
할 때는 현재 브랜치 추적 브랜치의 HEAD를 참조합니다.
Reference
이 문제에 관하여(Git2.5 업데이트 정보), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/totomo/items/84716347acfdbe00f8cd
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ git clone https://github.com/git/git/
$ cd git
$ make install
로컬 창고로 여러 개의 관리를 하려면 이 상황이 편리할 것 같다
Git2.4까지 하면 아래처럼 전문적으로 clone 관리가 필요합니다.
bash
$ git clone [email protected]:totomo/test.git test1
$ git clone [email protected]:totomo/test.git test2
worktree 명령을 사용하면 지정된 곳에서 다른 로컬 창고를 만들 수 있습니다.bash
# HEADから ~/test2にtest2をカレントブランチとしたローカルリポジトリを複製
$ git worktree add ~/test2
# ~/test2にmasterのHEADの親コミットから切ったtest2というブランチをカレントブランチとするローカルリポジトリを複製
$ git worktree add ~/test2 master^
# ../test2にmasterのHEADの親コミットから切ったhotfixというブランチをカレントブランチとするローカルリポジトリを複製
$ git worktree add ~/test2 -b hotfix master^
# ../test3にすでに他のworktreeコマンドで生成されたローカルリポジトリでcheckoutされているhotfixというブランチをカレントブランチとするローカルリポジトリを複製
$ git worktree add ~/test3 -f hotfix
git clone 복사 때와 달리 분기별 상태(HEAD 참조 대상이 해시를 제출하고 분기가 늘어날 때) 등이 공유됩니다.-f
를 추가하지 않으면 다른 worktree
명령으로 생성된 로컬 창고에 cheeckout의 지점을 지정하면 욕을 먹을 수 있으니 주의해야 한다--detach
무명분지를 끊는 것도 선택할 수 있다.발표 전
clone
에 습관이 된 사람이나 worktree
지령을 대체할 수 있다.그러나 실험적인 물건으로 몇 개의 버그가submodule를 포함하는 창고에서 이용을 추천하지 않기 때문에 인터페이스는 사용자의 의견에 따라 앞으로도 변경될 수 있다.
해보도록 하겠습니다.
bash
#worktree作成
$ pwd
/Users/toku/test
$ git worktree add ~/test2
Enter /Users/toku/test2 (identifier test2)
Switched to a new branch 'test2'
# test2ブランチにコミット
$ cd ../test2
$ git commit -am "Add empty modification" --allow-empty
$ $git rev-list HEAD -1
e0da2d47eb2dff09fe75f8ae87669b6bf9306731
# 元のディレクトリにtest2ブランチへのコミットが共有されているか確認
$ cd ../test
$ git rev-list test2 -1
e0da2d47eb2dff09fe75f8ae87669b6bf9306731
shorthand <reference>@{push} <reference>@{push}
이런 표시는 upstream 지점을 지정할 수 있습니다.
예를 들어 마스터 지점의 추적 지점이 HEAD와 로컬 창고의 마스터 지점의 HEAD에서 제출한 차이는
bash$ git log master@{push}...master
#カレントブランチがmasterの場合は、省略可能
$ git log @{push}...master
처음 생략<reference>
할 때는 현재 브랜치 추적 브랜치의 HEAD를 참조합니다.
Reference
이 문제에 관하여(Git2.5 업데이트 정보), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/totomo/items/84716347acfdbe00f8cd
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ git log master@{push}...master
#カレントブランチがmasterの場合は、省略可能
$ git log @{push}...master
Reference
이 문제에 관하여(Git2.5 업데이트 정보), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/totomo/items/84716347acfdbe00f8cd텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)