>  기사  >  백엔드 개발  >  Git 작업에 일반적으로 사용되는 명령 요약

Git 작업에 일반적으로 사용되는 명령 요약

零下一度
零下一度원래의
2017-07-17 15:11:171382검색

汇 일반적으로 사용되는 명령 요약

1. 다음 명령을 사용하여 특정 노드로 돌아가서 특정 노드로 돌아갑니다.

Git Reset – 하드 해시 노드, 수정 유지.

2. 모든 로컬 수정. 제출되지 않은 모든 항목은 원래 상태로 반환됩니다.

Git 체크아웃 .

Git 체크아웃 저장소는 다음과 같은 저장소 전환을 의미합니다: git checkout dev dev 저장소로 전환

Git 체크아웃 파일 주소는 다음과 같은 파일 수정 취소를 의미합니다: git checkout backend/controller/site

3. 커밋 로그 보기

Git log

4.                                                                                 이유는 window와 Linux 사이의 공백과 줄 바꿈 변환이 일관되지 않기 때문에 발생합니다. 해결 방법은 다음과 같습니다.

전역 변수 구성 git config -- global core.autocrlf false

전역 변수 보기 git config –global –l 전역 변수 보기

mkdir learngit / /폴더 만들기

cd learngit //현재 디렉터리 전환

pwd //전체 경로 표시 현재 디렉터리

git init //디렉토리 초기화

ls -ah //숨겨진 파일을 포함하여 현재 디렉터리의 모든 파일 표시

cd.>readme.txt //빈 파일 만들기

git add readme. txt //git 저장소에 파일 추가

git commit -m “readme 파일 작성” //파일 제출 및 변경 사항에 대한 설명 추가

git status //현재 웨어하우스 파일 변경 상태 보기

git diff //작업 딕셔너리와 스테이징 영역(스테이지)의 비교

git diff --cached //스테이징 영역(스테이지)과 브랜치 비교(마스터)의 비교

수정 후 파일 내용, git 상태는 "git add" 및/또는 "git commit -a"를 사용하라는 메시지를 표시합니다. 직접 커밋하지 말고 먼저 추가한 다음 커밋하세요.

git log //시간 및 시간과 같은 세부 정보가 포함된 git 커밋 기록 보기 submitter

git log --pretty=oneline //버전 번호와 제출 지침만 보기

git Reset --hard HEAD^ //이전 버전으로 롤백

git Reset --hard HEAD^^ //롤백 이전 버전

git Reset --hard HEAD~100 //이전 100개 버전을 롤백합니다

git Reset --soft HEAD //롤백 시 캐시 영역과 작업 공간을 재설정하지 않음

git Reset --mixed HEAD //롤백 시 캐시 영역 재설정, 기본 옵션

git Reset --hard HEAD //롤백 시 캐시 영역 및 작업 공간 재설정

git Reset //HEAD를 지정하지 않음, 캐시의 수정 사항을 지우는 데 사용됨 Area

git Reset filename //캐시 영역에서 지정된 파일의 수정 사항을 삭제합니다

git Reset --hard //HEAD를 지정하지 않고 작업 공간 및 캐시 영역의 수정 사항을 삭제하는 데 사용됩니다.

git Reset -- hard filename //작업공간 및 캐시 영역에서 지정된 파일의 수정사항을 삭제합니다

cat readme.txt //파일 내용 보기

롤백 후 실행 취소를 원하는 경우에는 두 가지 방법이 있습니다

1) 원본 파일 터미널 창을 닫고 최신 버전 번호를 검색하고 처음 몇 개의 숫자를 입력해야 합니다(예:

git Reset --hard ec6980a

2) 터미널 창을 닫고 다시 열고 git reflog를 입력하고 모든 레코드를 봅니다. 버전 번호 롤백

git checkout -- file //작업 공간 작업을 취소합니다. 두 가지 상황이 있습니다. 1、 캐시 영역에 추가되기 전에 로컬 작업 공간 수정을 취소하는 것입니다. , 2、캐시 영역이 추가된 후에는 캐시된 수정 사항을 취소하고 캐시된 버전을 복원합니다

git checkout -- 파일 명령의 --가 매우 중요합니다. --가 없으면 "다른 것으로 전환합니다." Branch" 명령

git checkout Branch //브랜치를 전환하고 캐시 영역과 워크스페이스를 동시에 재설정합니다. 워크스페이스가 수정되었지만 제출되지 않은 경우 먼저 커밋하거나 스태시해야 합니다

git checkout Branch --force / /분기 전환, 캐시 영역과 작업 공간을 동시에 재설정

git checkout - -force //분기를 지정하지 않음, 작업 영역의 수정 사항을 지우는 데 사용됨(이전에 추가한 경우 캐시 영역은 변경되지 않은 상태로 유지됨) , 작업 영역은 캐시 영역과 일치합니다)

git Reset HEAD fileName //임시 저장 영역을 변경할 수 있습니다. 관리자님, 로컬 삭제는 웨어하우스

git rm text.txt에 해당해야 합니다. //원격 웨어하우스 파일을 삭제한 후 git commit

을 제출하세요.

git checkout -- test.txt //로컬 rm이 실수로 파일을 삭제했다고 가정하면 명령을 사용하여 웨어하우스의 최신 복사본을 로컬로 복사하고 작업공간 버전을 저장소의 버전으로 바꿀 수 있습니다. 작업공간 수정 또는 삭제 여부를 "클릭 한 번으로 복원"할 수 있습니다.

ssh-keygen -t rsa -C "liwenxin@foreveross.com" //로컬로 연결된 계정 정보를 설정하고 Enter를 모두 누릅니다. 단, 비밀번호를 공백으로 설정하지 마세요.

open ~/.ssh //Mac은 홈 디렉터리에서 ssh를 엽니다

cd ~/.ssh //이전 단계에서 실수로 비밀번호를 입력한 경우 다음과 같이 빈 비밀번호로 재설정할 수 있습니다

ssh- keygen -p -f id_rsa //이전 비밀번호를 한 번 입력하고 필요에 따라 새 비밀번호를 두 번 입력하세요

git 원격 추가 원본 git@github.com:gz-jam/learngit.git //자신의 GitHub 계정 이름으로 바꿉니다. , 로컬을 원격 라이브러리와 연결

git remote rm Origin //연결이 잘못되었거나 다시 바인딩해야 하는 경우

git 원격 추가 원본 git@github.com:michaelliao/learngit.git //다시 바인딩할 수 있습니다

git push -u Origin master //로컬 라이브러리의 모든 내용을 원격 라이브러리로 푸시합니다. 확인하려면 yes를 입력하고 원격 라이브러리가 비어 있으므로 처음으로 푸시했습니다. master 브랜치에 -u 매개변수를 추가했습니다. Git은 로컬 마스터 브랜치의 내용을 원격 새 마스터 브랜치로 푸시하고 로컬 마스터 브랜치를 원격 마스터 브랜치와 연결하여 명령을 단순화합니다. 앞으로 밀거나 당길 때.

git push Origin master //두 번째부터는 -u가 필요하지 않습니다

git clone git@github.com:michaelliao/gitskills.git //원격 웨어하우스 복제, Git은 여러 프로토콜을 지원합니다. 기본 git:/ /는 ssh를 사용하지만 https와 같은 다른 프로토콜도 사용할 수 있습니다. 예를 들어 https://github.com/gz-jam/gitskills.git

git checkout -b dev //분기를 생성하고 현재 분기를 dev로 전환합니다. 이는 git과 같은 두 명령을 실행하는 것과 같습니다. 브랜치 dev 및 git checkout dev

git 브랜치 //현재 프로젝트의 모든 브랜치를 봅니다. 앞의 *는 현재 유효한 브랜치를 나타냅니다.

git merge dev //지정된 브랜치를 현재 브랜치에 병합하는 데 사용됩니다

git 브랜치 -d dev //병합 가능 중복된 프로젝트 브랜치 삭제를 고려하세요

git Branch -D dev //브랜치 제출 파일이 병합되지 않았습니다. 삭제되면 강제로 삭제하시겠습니까? ? 대문자 D에 주의하세요

두 브랜치가 동일한 파일에 콘텐츠를 제출한 경우 Git "빠른 병합"을 실행할 수 없습니다. Git은 <<<를 먼저 실행해야 합니다. ;<<<, =======, >>>>>>> 다른 브랜치의 내용을 표시하고 조정 후 파일을 다시 추가한 다음 git commit 충돌 해결을 위한 파일 제출

git log --graph --pretty=oneline --abbrev-commit //브랜치 병합 상태를 볼 수 있습니다

git log --graph //이 명령은 브랜치 병합도 볼 수 있습니다 graph

git merge --no-ff -m "merge with no-ff" dev //빨리 감기 모드를 비활성화합니다. Git은 병합 중에 새 커밋을 생성합니다

git stash //현재 브랜치 작업은 다음과 같습니다. 완료되지 않았지만 창고에 제출하고 싶지 않다면 다른 지점으로 전환해도 코드 손실이 발생하지 않도록 먼저 지침과 함께 저장할 수 있습니다.

git stash list //stash 콘텐츠 보기 두 가지가 있습니다. 하나는 git stash apply stash@{0}를 사용하여 복구하는 것입니다. 그러나 복구 후에는 숨김 콘텐츠를 삭제하려면 git stash drop을 사용해야 합니다. 다른 방법은 git stash pop을 사용하여 삭제하는 것입니다. 복원 중 콘텐츠 숨기기

git 원격 //원격 라이브러리의 정보 보기

git remote -v //자세한 정보 표시

git push Origin master //브랜치 푸시, 즉 모든 로컬 제출물 푸시 푸시할 때 로컬 브랜치를 지정해야 합니다. 새로 생성된 로컬 브랜치가 원격으로 푸시되지 않으면 로컬에서 브랜치를 푸시하려면 git push Origin을 사용하세요. Branch-name

git checkout -b dev Origin/dev //기본 브랜치인 로컬에 원격 원본의 dev 브랜치를 생성합니다. master

git push //충돌이 발생하면 먼저 git pull 코드를 실행합니다

git pull //실패하면 "추적 정보 없음" 메시지가 표시됩니다. 이유는 로컬 개발 브랜치와 원격 원본/개발 브랜치 간의 링크가 지정되지 않았기 때문일 수 있습니다.

git Branch --set-upstream- to=origin/dev dev //설정 dev와 Origin/dev 간의 병합에 충돌이 있어 수동으로 해결해야 합니다. 해결 방법은 앞서 언급한 대로 git status, 수동 복구, git add 및 git입니다. 커밋하고 마지막으로 git push

git tag v1.0 //커밋 번호가 너무 길어서 기억할 수 없습니다. 브랜치에 태그를 지정할 수 있습니다

git tag v0.9 6224937 //커밋 번호에 지정된 커밋 번호를 태그하세요. Branch

태그는 시간순이 아닌 알파벳순으로 나열되어 있습니다. git show 을 사용하여 태그 정보를 볼 수 있습니다

예를 들어 git show v0.9

git tag -a v0.1 -m "version 0.1released" 3628164 //설명이 포함된 태그를 생성하고 -를 사용하세요. a는 태그 이름을 지정하고, -m은 설명 텍스트를 지정합니다

git tag -d v0.1 //태그를 잘못 입력하면 삭제할 수도 있습니다

생성된 태그는 로컬에만 저장되며 자동으로 리모컨으로 푸시되지 않습니다. 태그를 원격으로 푸시하려면 git push Origin

명령을 사용하세요. 예: git push Origin v1.0

또는 원격으로 푸시되지 않은 모든 로컬 태그를 한 번에 푸시하세요.

예: git push Origin --tags

태그가 원격으로 푸시된 경우 먼저 원격 태그를 삭제하는 것이 조금 더 번거롭습니다. 그런 다음 git tag -d v0.9; 원격으로 삭제하세요. 삭제 명령도 푸시이지만 형식은 git push Origin :refs/tags/v0.9 또는 git push Origin --delete tag v0.9

입니다.

위 내용은 Git 작업에 일반적으로 사용되는 명령 요약의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.