Git 상용 명령

4119 단어 Git상용 명령
git 를 사용 한 지 오래 되 었 습 니 다.자신 이 자주 사용 하 는 명령 을 자신의 설명 으로 기록 하면 잊 기 쉽 고 다른 사람 이 참고 할 수 있 습 니 다.
디 렉 터 리: 
가장 기본 적 인 명령:
git clone 복사 및 원 격 master 분기 추적.추적 의 장점 은 나중에 pull 과 push 명령 을 통 해 원 격 최신 코드 를 제출 하거나 가 져 올 수 있 으 며 원 격 분기 이름 을 지정 하지 않 아 도 된다 는 것 입 니 다.
git submodule init
git submodule update 
참고 설명도
HEAD 는 현재 commt 대상 을 가리 키 는 동시에 우리 가 어느 branch 에서 일 하 는 지 나타 내 는 데 도 사 용 됩 니 다.그래서 HEAD 를 사용 하여 지침 을 조작 할 때 현재 commt 의 방향 을 바 꾸 지 않 습 니 다.
  image
 이 그림 을 대조 하여 두 단락 의 제출,작업 영역(working tree),임시 저장 영역(index)과 branch 간 의 관 계 를 이해 합 니 다.
image
정보 클래스 명령 보이 기
git ls-files-u 충돌 하 는 파일 을 표시 합 니 다.-s 는 충돌 이 해 결 된 파일 로 표 시 됩 니 다.
git diff 작업 영역 과 stage 파일 의 차이 비교
git diff--cached 대비 stage 와 branch 간 의 차이
git branch 는 현재 reposcory 에 있 는 모든 branch 를 보 여 줍 니 다.
git branch--a 는 local 과 remote 의 모든 branch 를 보 여 줍 니 다.
git ls-files--stage 에서 stage 에 저 장 된 파일 검사
git log 는 HEAD 가 가리 키 는 commt 까지 의 모든 commt 기록 을 표시 합 니 다.reset HEAD~n 명령 을 사용 하여 HEAD 포인 터 를 앞으로 이동 시 키 면 HEAD 이후 commt 기록 이 표시 되 지 않 습 니 다.
git log-g 는 reflog 를 조회 하여 최근 에 어떤 동작 을 했 는 지 확인 합 니 다.git branch 가 복구 되 기 전에 HEAD 포인 터 를 이동 해서 버 려 진 commt 대상 에 맞 출 수 있 습 니 다.reflog 를 잃 어 버 리 면 git fsck--full 을 통 해 인용 되 지 않 은 commt 대상 을 볼 수 있 습 니 다.
git log-p-2 최신 두 번 의 commt 대상 대비
log -1 HEAD
git log --pretty=oneline
git log--stat 1a 410 e sha 1 이 1a 410 e 인 commt 대상 의 기록 보기
git blame-L 12,22 sth.cs 코드 에 결함 이 있 는 것 을 발견 하면 git blame 으로 파일 을 표시 하고 그 방법의 줄 마다 누가 어느 날 에 수정 되 었 는 지 확인 할 수 있 습 니 다.다음 예 는-L 옵션 을 사용 하여 출력 범 위 를 12 번 에서 22 번 째 줄 로 제한 합 니 다.
클래스 생 성 명령
git brach branch Name branch Name branch Name 이라는 branch 를 만 듭 니 다.
git checkout branch Name branch Name 의 branch 로 전환
git checkout-b 생 성 및 전환,즉 위의 두 명령 의 통합
git brach branch Name ef 71 commt ef 71 에서 branch Name 이라는 branch 를 만 듭 니 다.
클래스 명령 취소
하면,만약,만약...
1.use "git reset HEAD ..." to unstage
add 명령 으로 파일 을 stage 에 추가 했다 면 stage 에서 취소 해 야 합 니 다.
그리고 작업 영역 에서 취소 합 니 다.
2.use "git checkout -- ..." to discard changes in working directory
git checkout a.txt  a.txt 의 변경 사항 취소(작업 영역 에 있 는 파일)
하면,만약,만약...
git chenkout .
만약 이미 commt 가 되 었 다 면,필요 합 니 다.
git commt-amend 에서 수정 합 니 다.이것 은 최근 에 한 번 만 수정 할 수 있 습 니 다.즉,새로운 제출 로 지난 제출 을 덮어 씁 니 다.그래서 만약 에 push 를 하고 나 면 위험 해 요.
$git reset--hard HEAD 는 작업 영역 과 index 의 변경 을 포기 하고 HEAD 지침 은 현재 commt 를 가리 키 고 있 습 니 다.(첫 번 째 그림 참조)
이 명령 은 commt 가 없 는 merge 를 취소 하 는 데 도 사용 할 수 있 습 니 다.그 원 리 는 index 와 작업 구역 의 변경 을 포기 하 는 것 입 니 다.commt 가 없 는 변경 은 index 와 작업 구역 에 만 존재 하기 때 문 입 니 다.
$git reset--hard HEAD^commt 의 내용 을 취소 하 는 데 사 용 됩 니 다(git reset--hard HEAD~1).원 리 는 작업 영역 과 index 의 변경 을 포기 하고 HEAD 포인터 가 이전 commt 대상 을 가리 키 는 것 이다.
git revert 도 명령 을 취소 합 니 다.reset 는 제자리 나 앞으로 이동 하 는 포인터 와 차이 가 있 습 니 다.git revert 는 현재 commt 를 덮어 쓰 고 포인터 가 뒤로 이동 하 는 commt 를 만 듭 니 다.
클래스 명령 제출
git add 는 새 파일 이나 기 존 파일 의 변경 사항 을 추적 하거나 충돌 을 해결 합 니 다.
git commit 파일 을 stage 에서 branch 로 제출 합 니 다.
git commt-a 수 정 된 파일 을 stage 에 먼저 제출 한 다음 stash 에서 branch 로 제출 합 니 다.
클래스 삭제 명령
git rm--cached readme.txt 는 stage 에서 만 삭제 하고 물리 파일 을 유지 합 니 다.
git rm readme.txt 는 stage 에서 삭제 할 뿐만 아니 라 물리 파일 도 삭제 합 니 다.
git 뮤 직 비디오 a.txt b.txt 는 a.txt 를 b.txt 로 이름 을 바 꾸 었 다.
Merge 클래스 명령
충돌 상태 에서 충돌 을 해결 해 야 할 파일 은 index 에서 작업 영역 으로 돌아 갑 니 다.
1.도구 나 손 으로 충돌 해결
2.git add 명령 은 충돌 이 해결 되 었 음 을 나타 낸다.
3.충돌 이 해 결 된 파일 을 다시 commit 합 니 다.
$ git reset --hard ORIG_HEAD 는 commt 의 merge 를 취소 하 는 데 사 용 됩 니 다.
$git reset-hard HEAD 는 아직 commt 되 지 않 은 merge 를 취소 하 는 데 사 용 됩 니 다.그 원 리 는 index 와 작업 영역 변경 을 포기 하 는 것 입 니 다.
git reset --merge ORIG_HEAD,그 중의--hard 를-merge 로 바 꾸 면 스크롤 백 할 때 working tree 를 제거 하 는 것 을 피 할 수 있 습 니 다.

좋은 웹페이지 즐겨찾기