Git Bash는 Window 환경에서 Git을 명령어로 제어할 수 있는 명령줄 인터페이스입니다.
0. git workflow 설명
내 로컬 저장소에는 총 3가지 영역으로 작동합니다.
Working Directory : 내 로컬 저장소 디렉토리
Staging Area : commit을 하기 전 git add 로 추가한 파일들이 모여있는 공간
Localrepo or Repository : commit 한 내역들이 모여있는 저장소
1. 사용자 설정
1_1. git config --global user.name "사용자명" : 깃환경에 사용자 이름 지정
1_2. git config --global user.email "사용자 이메일" : 깃환경에 사용자 이메일 지정
1_3. git config --global -l : 현재 컴퓨터에 연동된 계정을 확인
2. 내 로컬 폴더와 git repository 연결 작업
2_1. git remote add origin [아래보이는 HTTPS URL 복사] : 내 로컬 폴더와 git repository[ 아래보이는 HTTPS URL ]를 연결
2_2. git remote -v : 현재 내 로컬 폴더와 어떤 원격 저장소와 연결되어있는지 확인
2_3. git remote rm origin : 연결된 원격 저장소 삭제
2_4. git clone [아래에 보이는 HTTPS URL 복사] : 원격 저장소의 내용을 내 로컬 폴더에 복제
주의사항 !
git clone [원격 저장소] 뒤에 "."을 추가하게 되면 내 로컬 폴더에 원격저장소의 폴더 제외하고 파일만 복제된다.
3. 원격 저장소에 업데이트 된 내용 반영
3_1. git pull origin [ master or 브랜치명 ] : 원격 저장소에 업데이트 된 내용을 내 로컬 폴더에 업데이트 반영.
주의사항 !
원격 저장소에 업데이트된 내용과 내 로컬 폴더에 업데이트한 내용이 겹치는 경우 문제가 발생하게 된다.
이렇게 되면 git내부적으로 덮어쓰기 때문에 코드 수정이나 업데이트된 내용이 서로 문제가 발생할 수 있다.
이런 경우 다양한 해결책이 존재한다.
1) 내가 수정한 작업을 상태 관리 내역을 지우고 원래 상태로 돌아간 후에 git pull을 다시 한다.
2) 브랜치를 하나 새로 파서 내가한 작업을 담고, 기존 브랜치 커밋내역을 돌려서 다시 git pull 한다.
3) 새로 git clone을 받는다.
4. 로컬에서 새로운 프로젝트를 원격 저장소에 등록 및 원격 저장소에서 가져온 파일을 내 로컬 폴터에서 수정 후 반영.
4_1. git init : 이 로컬 폴더를 git으로 관리를 시작하게 되면 .git이라는 폴더가 생기게 된다. 여기에 추후에 변경되는 내역들이 저장된다 즉 .git을 삭제하게 되면 상태 관리 내역이 모두 사라진다.
4_2. git add [파일명 or 폴더/ or *] : 변경된 파일을 스테이지에 추가
쉽게 설명하면 Ctrl + s (저장)
1) 파일명 : 파일하나만 스테이지에 추가
2) 폴더명/ : 폴더 하위 파일 모두 스테이지에 추가
3) * : 로컬저장소에 있는 모든 파일 스테이지에 추가
4_2. git commit -m "커밋 메시지" : 스테이지에 추가한 변경 사항[ add 했던 내역 ]을 커밋메시지를 남기며 커밋으로 저장
쉽게 설명하면 "다른이름으로 저장"
4_3. git push origin [master or 브랜치명] : 로컬에서 작업한 변경 사항을 원격 저장소에 [브랜치명]의 브랜치의 커밋을 업로드.
쉽게 설명하면 "다른이름으로 저장"한 파일을 원격 저장소에 올리겠다.
5. 버전 확인 및 관리
5_1. git log : 현재까지 커밋 이력을 확인 [ 버전 확인 ]
5_2. git status : 마지막 버전의 상태와 지금 상태와 차이를 보여준다. [ add를 하지 않으면 확인하지 못한다. ]