커리큘럼
01. HTML,CSS
02. git (v)
03. Java
04. Database
05. Jsp
06. 미니프로젝트
07. SpringFramework
08. SrpingBoot
09. React JS
10. 중간프로젝트
11. Linux 명령어
12. AWS 클라우드
13. Kotlin
14. Andriod
15. 최종프로젝트
Git
Git 명령어
깃 설치후 최초 설정
- 사용자 정보 설정
- Git은 커밋 할 때마다, 현재 운영체제에 설정 된 아래 정보를 사용
- 혼자 사용하는 컴퓨터라면, 한번만 선언하면 되지만 매번 다른 환경이라면 사용자 정보를 설정
$ git config --global user.name "[user.name]"
$ git config --global user.email [email]
$ git config -list
로컬 저장소 저장 명령어
git init : 깃 시작
git status : 현재 깃의 상태
git add 파일명 : 해당 파일을 staging area에 추가
git rm --cached 파일명 : 해당 파일을 staging area에서 삭제
git add . : 파일을 전부다 추가
git commit -m "메시지" : 깃을 레파지토리에 저장
git log : 커밋 이후 변경 로그 확인
git commit -am "메시지" : 동시에 추가와 커밋
원격 저장소에 올리는 명령어
git remote add origin [git address] : 원격저장소를 추가
git push origin master : 원격저장소에 저장
- 로컬컴퓨터에서 깃관련 자격증명관리 삭제를 통해 다른 깃계정 사용 가능
git reset
git reset --hard HEAD^ : 커밋을 한단계 앞으로 되돌림(모두 초기화) -> 작업했던 파일까지 되돌림.
git reset --mixed HEAD^ : 커밋을 한단계 앞으로 되돌림(working directory는 유지) -> 작업한 파일만 남고 add,commit 내역 사라짐.
git reset --soft HEAD^ : 커밋을 한단계 앞으로 되돌림(working directory, staging area 유지) -> 작업한 파일과 add내역은 남고 commit내역만 사라짐.
git reset --hard HEAD : 현재 커밋상태로 되돌림 -> 마지막 커밋된내역으로 되돌림.(작업 후 add만 하고 commit을 하지 않았다면 이전 commit내역으로 되돌림)
git branch
git branch [branch name] : 브랜치 생성
git branch : 생성된 브랜치리스트 확인
git checkout [branch name] : 브랜치 변경
git branch -D [branch name] : 브랜치 삭제
git merge [합치는 branch name] : 현재 브랜치와 선언한 브랜치 병합
rebase : 브랜치의 시작점 재설정
원격저장소와 상호작용
remote : 원격저장소에 조회하기
push : 원격저장소에 밀어넣기
pull : 원격저장소에서 얻어와서 합치기
fetch : 원격저장소에서 얻기
clone : 원격저장소에서 복사하기
git remote add <단축이름> 주소 : 로컬저장소에서 원격저장소를 참조하기 위해 설정하는 명령어.
git push origin master : origin == 단축이름 => 원격저장소
git pull origin master : 원격저장소의 상태를 로컬 저장소에 불러와 덮어씌움.
git fetch origin master : 원격저장소의 상태를 FETCH_HEAD라는 임시 브랜치로 불러옴. 이를 합치려면 master브랜치에서 merge FETCH_HEAD 명령어를 통해 합치거나 임시 브랜치를 switch -c <new branch-name>을 통해 새로운 브랜치로 생성하여 합침.
git clone <원격 repository주소> : 원격저장소를 로컬에 복사.
git Fork
- github내 Repository생성 후 Repository생성자는 master를 통해 pull-request를 하고 다른 인원들은 Fork를 통해 자신의 계정에 repository를 생성
- local에 clone하여 새로운 Branch 생성후 작업 수행
- push를 하게되면 자신의 계정에 pull요청버튼이 뜨고 해당 버튼을 통해 요청하게 되면 root Repository의 생성자가 pull-request를 통해 다른 브랜치들을 merge할지 결정