git은 분산 버전 관리 시스템이다. Version Control System. 한 파일의 변경사항을 추적한다. 그렇기 때문에 특정시점으로 회귀할 수도 있다. 프로젝트를 진행할 시 다수의 작업자가 사용하기 때문에 유용하다.
레파지토리는 폴더의 특성이라고 이해하면 쉽다. 각각의 프로젝트를 관리하는 하나의 '폴더'라고 여겨진다. 로컬과 리모트로 나뉘는데 로컬은 컴퓨터에 저장된 저장소를, 리모트는 내 컴퓨터가 아닌 외부 또는 원격서버 상에서 존재하는 저장소를 말한다.
부트캠프 과정을 진행하면서 처음 사용해 본 git. 사실 퍼블리싱 할 때 git 에서 다른 사용자들이 공개해 놓은 예시 소스를 가져와 참고할 적 써본것이 전부였다. 하지만 두 번의 프로젝트와 한 번의 리팩토링 프로젝트를 진행하면서, 그리고 깃 프로필을 새로 만들게 되면서 자연스레 쓰게 되는 깃 명령어에 대해 정리해보고자 한다.
touch 파일명
mkdir 디렉토리명
ls
ls -al
1) git add .
2) git status = 상태 보고. 수정된 목록, 변경된 것 조회 가능
3) git commit -m 메시지 입력 = 커밋 히스토리에 올라갈 커밋메시지 작성
4) git push origin 브랜치명 = push 진행
새 저장소(repository)를 생성한 뒤 이것을 git으로 관리를 하려면 터미널 상에서 생성한 저장소(mkdir 명령어를 사용해서 만든 폴더 또는 저장소)로 이동한다.
여기에서 git init을 쳐야만 이 안에 들어있는 프로젝트의
모든 변경사항을 추적하고 관리할 수 있게한다.
--> 바탕화면에서 git init 두 번이나 한 나를 반성하자..
git config --global user.name "이름"
git config --global user.email "이메일"
일반적으로 브랜치 생성하기 전에 로컬의 레파지토리와 연결시켜야 하는 것이 선 과제이다.
연결 뒤에 master를 pull 받는다. 마스터 브랜치가 업데이트 된다.
그 뒤 별도의 브랜치를 생성해야 한다. 마스터, 즉 메인 브랜치는 작업의 최종 과정에서 머지된 최종최종최종ver의 브랜치나 마찬가지이다.
이 중심브랜치를 사용하지 않고 각 기능별(앱별)로 별도의 브랜치를 생성해야 하는 이유가 여기에 있다.
생성은 말 그대로 브랜치 - 피쳐/브랜치 이름 이라고 적는다. 그리고 현재 메인(구 마스터)브랜치 상태에서 새로 생성된 브랜치로 전환할 경우 체크아웃 명령어를 사용해서 브랜치를 변경할 수 있다.
git remote add origin 레파지토리url
git pull origin main(2020년 10월 이전 master)
git branch feature/생성된브랜치1
git checkout feature/생성된브랜치1
git add에 대한 것들
1) git add 파일1 = 파일1만 추가
2) git add 파일1 파일2 = 파일1,2 추가(여러파일)
3) git add . = 모든 파일 추가
프로젝트의 커밋내용 확인
git log
git checkout master
git pull origin master
git checkout feature/브랜치이름
git merge master
conflict -> 해결, commit-push 진행