Git 일상 사용 요약

5455 단어 Study
Git 일상 사용 요약
문서 목록
  • Git 일상 사용 요약
  • Windows 시스템에 Git 설치
  • 버전 라이브러리 만들기
  • 파일 추가
  • 상태 보기
  • 릴리즈 예비(fallback)
  • 모든 수정 취소
  • 파일 삭제
  • Git 원격 웨어하우스
  • 원격 라이브러리 추가
  • 원격 라이브러리에서 클론 복제
  • 분기 관리
  • 생성, 보기, 삭제 및 합병
  • 충돌 해결
  • 분기 정책
  • Bug 분기
  • Feature 분기
  • 다중 공동 작업
  • Windows 시스템에 Git 설치
  • Git 홈페이지에서 Git
  • 다운로드
  • 설치 Git
  • 시스템의 사용자 이름과 메일주소를 설정합니다
  • $ git config --global user.name "username"
    $ git config --global user.email "email"
    

    그중 - 글로벌 매개 변수는 이 기계의 모든 Git 창고에서 이 설정을 사용할 수 있음을 나타낸다.
    버전 라이브러리 만들기
  • 새 파일
  • git init를 통해 이 디렉터리를 Git로 관리할 수 있는 창고로 변경
  • ###Git 파일 관리
    파일 추가
  • 테스트 같은 로컬 파일을 만듭니다.txt
  • $ git add test.txt //                ,    ,         ,    Untracked  , Git          
    
  • $ git commit -m "explanation" //          ,  -m                
    
  • 만약 여러 파일을 새로 만들었다면dd 명령을 여러 번 사용하고commit을 한 번 더 사용할 수 있다. 예를 들어
    $ git add file1.txt
    $ git add file2.txt file3.txt
    $ git commit -m "add 3 files."
    
  • Git가 추적하고 관리하는 것은 수정이기 때문에 파일을 수정할 때 수정 완료는 dd를 사용하고 commit을 사용해야 합니다. 그렇지 않으면 수정을 제출할 수 없습니다.
    첫 번째 수정 – >add – > 두 번째 수정 – >commit의 경우 두 번째 수정은 제출되지 않으며 Git에 동기화된 것은 첫 번째 수정만 있습니다
    상태 보기
    $ git status //        ,         (            ,         )
    $ git diff test.txt //  test.txt            
    

    오류 수정을 피하기 위해 두 가지를 사용합니다. 오류가 없는지 확인한 후에dd와commit 명령을 통해git에 추가할 수 있습니다
    버전 예비(fallback)
    $ git log //      
    $ git log --pretty=oneline //          (     )
    
     Git , HEAD      ,HEAD^       ,HEAD^^       ,HEAD~100   100   
    $ git reset --hard HEAD^ //        
    $ git reset --hard xxxxx //       ,  xxxx       (commit id)    
    $ git reflog //        ,                          ,        
    

    모든 수정 사항 취소
    $ git checkout -- test.txt // test.txt             (  commit   )
    
  • 파일 테스트.txt 수정 후 임시 저장소에 두지 않았고dd 명령을 사용하지 않았으며 수정을 취소하면 버전 라이브러리와 똑같은 상태로 돌아갑니다.
  • 파일 테스트.txt는 임시 저장소에 넣었고 수정을 했습니다. 수정을 취소하면 임시 저장소에 추가된 상태로 돌아갑니다.
  • $ git reset HEAD test.txt //          ,       
    

    작업공간 변경 내용 폐기 및 로케이션 변경 내용 폐기
    파일 삭제
  • 로컬 파일 테스트를 삭제합니다.txt
  • $ git rm test.txt //         
    $ git commit //  
    

  • 만약 로컬에서 파일을 잘못 삭제했다면 명령을 통과할 수 있다
    $ git checkout -- test.txt  //      
    

    Git 원격 웨어하우스
    원격 창고, 즉 GitHub을 서버의 무료 위탁 관리 Git 창고로 충당합니다.로컬과 GitHub의 Git 창고를 원격으로 동기화할 수 있습니다. 이로써 GitHub의 창고를 백업할 수 있을 뿐만 아니라 다른 사람들이 이 창고를 통해 협업할 수 있습니다.
    원격 라이브러리 추가
    로컬 라이브러리가 이미 존재합니다. 새 원격 라이브러리를 만듭니다.
  • GitHub에서Create repository를 선택하여 새 Git 창고 만들기
  • 로컬 해당 Git 웨어하우스에서 명령 실행:
    $ git remote add origin [email protected]:username/projectName.git  //        GitHub    Git     ,username GitHub   ,projectName    
    
    $ git push -u origin master //     master       ,  -u Git    master           master     ,       master      ,            
    
  • 앞으로 로컬 제출이 이루어졌으며 명령을 통과하기만 하면 된다:
    $ git push origin master //   master          GitHub
    
  • 원격 라이브러리에서 클론 복제
    원격 라이브러리가 이미 존재합니다. 새 로컬 라이브러리를 만듭니다.
    $ git clone [email protected]:username/projectName.git //   
    $ git clone https://github.com/username/projectName.git //   
    

    지점 관리
    브랜치 생성, 보기, 삭제 및 결합
    $ git branch name		//      ,name     
    $ git checkout name		//     name
    $ git checkout -b name	//        name,         
    $ git branch			//    ,           * 
    $ git merge	name		//   name       
    $ git branch -d name	//   name  
    

    분기를 병합할 때 Git는 가능한 한 Fast forward 모드, 즉 바늘 방향을 바꾸며, 이 모드에서 분기를 삭제하면 분기 정보를 잃어버립니다.하지만 명령어$ git merge --no--ff name로 Fast forward 모드를 강제로 비활성화할 수 있습니다.
    충돌 해결
    충돌의 발생은 두 지점의 제출 내용이 일치하지 않고 지침을 바꾸어 해결할 수 없기 때문이다. 이때 Git는 충돌이 발생했음을 알려주고 $ git status를 사용하면 충돌 파일을 볼 수 있고 cat test.txt를 사용하면 충돌 위치를 볼 수 있으며 충돌을 수동으로 수정하여 해결한 후에 제출하면 합병이 완료된다.
    $ git log --graph --pretty=oneline --abbrev-commit	//        ,     
    

    물론 SourceTree와 같은 시각적 Git 관리 소프트웨어를 통해 충돌을 해결하는 것이 훨씬 편리할 것이다
    분기 정책
  • 마스터 지점은 매우 안정적이다. 즉, 새로운 버전만 발표하는 데 사용되기 때문에 평소에 위에서 일을 할 수 없다.
  • dev 지점은 불안정합니다. 일은 모두 dev 지점에서 하고 버전이 발표될 때 dev 지점을 마스터에 합쳐서 마스터 지점에서 발표합니다.
  • 팀은 각자 dev지점에서 일하고 각자 자신의 지점을 가지고 가끔씩 dev지점에 합병하면 된다.

  • Bug 분기
    $ git stash			//      
    $ git stash list	//           
    $ git stash apply	//      ,    stash  
    $ git stash drop	//  stash  
    $ git stash pop		//           stash  
    

    버그를 복구할 때, 우리는 새로운 버그 지점을 만들어서 복구한 다음, 합쳐서 마지막에 삭제합니다.
    수중의 작업이 완성되지 않았을 때 지령$ git stash을 통해 현재 작업 현장을 저장한 다음에 버그를 복구하고 복구한 후에 지령$ git stash pop을 통해 작업 현장을 복구할 수 있다.
    Feature 분기
    새 기능을 추가할 때, 새 지점을 만드는 것이 가장 좋다.
    통합되지 않은 지점을 버리면 명령어 $ git branch -D name 를 통해 실현할 수 있습니다. (대문자 D)
    다인 협조
    $ git remote				//         
    $ git remote -v				//           
    $ git push origin master	//    ,                    。   ,    							//   , master,Git                   
    $ git pull					//       
    
    $ git checkout -b name origin/name			   //               ,name    
    $ git branch --set-upstream name origin/name   //              
    

    좋은 웹페이지 즐겨찾기