2020년 멋쟁이사자처럼 8기 활동할 때에 운영진 분들이 유니라이언에서 강의해주셨던 내용 및 강의 자료를 바탕으로 내가 필요할 때 보기 위해 작성한 치트시트이다.
자주쓰는 Git 명령어
git init: git 저장소를 초기화
git add . 폴더에 변경된 모든 파일 staging area에 올리기
git commit-m "커밋에 대한 설명": 유사시 돌아갈 수 있는 저장소의 체크 포인트 생성
git remote add origin http://원격 저장소 주소.git: 원격저장소(remote repository)연결
git branch 브랜치 명: 새로운 브랜치를 생성
브랜치란? 한 repository 내에서 용도에 따라 저장소를 나누는 것.
git checkout 브랜치 명: 해당 브랜치로 이동
git push origin 브랜치: 원격 저장소의 특정 브랜치에 프로젝트 저장
git pull origin 브랜치: 원격 저장소의 특정 브랜치에서 변경사항 pull 해오기
git clone http://원격 저장소 주소.git: 원격 저장소에 있는 파일 전체 복사
git status: git 저장소의 상태를 확인(commit되지 않은 것이나 변경사항 어느 브랜치에 있는지를 콘솔에 출력해 줌)
두 개발자 모두 마스터 브랜치에 푸시하면 문제 될 수 있음. (충돌)
사전에 예방하기 위해 각자의 독립된 브랜치를 만들어 자신이 작업한 작업물을 올림
이후에 마스터브랜치에서 두개발자의 작업물을 하나로 합칠때 pull request? 사전에 충돌있는지 확인하고 이후에 컴플릭 나지않았을때 마스터에 merge한다.
협업과정
- repository 생성
- 팀원을 Collaborator로 추가
- 초기 프로젝트 pushgit remote add origin 주소~~git commit -m "커밋에 대한 설명"로컬환경에 올린 것.git push origin masterrepository에 초기 프로젝트 push됨.
- → passwordout
- 다음은 원격환경에 올릴 것
- git status "staging에 남았는지 확인
- git add . 모든 파일을 staging에 올린다?
- git init
- 팀원들의 로컬에 프로젝트 pullmkdir other_user: folder만들기
- git clone 주소 도 가능
- 팀원 각자의 브랜치를 생성하여 작업새로운 브랜치 생성생성 확인은 git branch로→ git checkout 이름git status 해보면 수정한 부분 보임원격 저장소에 있는 브랜치에 올리기git status로 실제 commit할 내용이 없는지 확인해보기
- → git push origin 이름
- 그 후 git commit -m "내용"
- 수정 후에 git add .
- 브랜치를 바꾸기(전환)
- → git branch 이름
- git branch 해보면 확인가능.
- 브랜치에 작업한 내용을 push
- 위 과정에서 설명
- Master와 merge 하기 전 pull requestbase: 어디에 적용할 것인지(기준), compare: 무엇을 적용할 것인지
- 수락 또는 취소. Create Full request해야 요청이 보내짐.
- 고치고 검토 받고 합친다 이런 개념..
- pull request확인 후 Master와 merge
- 팀장 계정에서 pull requests확인하고 승인 여부 결정.
Fork를 이용한 협업
collaborator가 아닌 경우에도 조언을 하고싶은 경우에,
- 작업하고 싶은 Repository fork해오기
- 자신의 로컬에서 작업git clone ~수정하고
- git status 하면 수정했다고 뜸.
- ls 확인
- cd fork
- 변경사항을 자신의 브랜치에 pushgit commit -m "변경했다고 커밋"이후 우리의 브랜치에 작업 내용을 푸시한다.만들면서 바로 전환→ 나의 브랜치에 올라감.
- git push origin 브랜치명
- → git checkout -b 브랜치명
- 로컬 깃 저장소에 저장한 것임.
- git add .
- 원본 레포지토리 소유자에게 Pull request요청
- create full request 클릭 소유자에게 메세지 작성
- 소유자가 pull requset를 승인하여 merge하면 자동으로 collaborator 추가
Fork버튼