[TIL] Git & Git-hub ( 2탄 )
저번 1탄에서는 Git이 무엇인지, Git의 명령어, Git에 관한 설명과 왜 필요한지에 관한 이유들에 대해 포스팅했다. 이번 2탄에서는 Git의 명령어를 이용해 프로젝트를 다루는 방법에 대해 포스팅하려한다. 오늘 다룰 포스팅은 Git 실습이 되겠다.
0. Git 설치 및 기본 명령어
1) Git 설치하기
git --version // 다음 명령어 실행 시 Git의 버전을 확인할 수 있다.
만약 Git이 설치되어 있지 않거나, 최신 버전의 Git을 설치하고 싶다면 다음 명령어를 입력하면 된다.
- 패키지 설치
$ sudo apt-get install git-core
1. 디렉토리 이동
1) 홈 디렉토리로 이동
$ cd ~
2) 새 디렉토리에 디렉토리명을 생성
$ mkdir [디렉토리명]
3) [디렉토리명]로 이동
$ cd [디렉토리명]
4) 부모 디렉토리로 이동
$ cd ..
5) 현재 경로를 출력
$ pwd // Print Working Directory
6) 디렉토리의 내용 출력
$ ls
7) 디렉토리의 폴더 상세 정보까지 출력
$ ls -l
8) 디렉토리의 숨김 파일과 디렉토리까지 출력
$ ls -a // 옵션은 합쳐서 ls -al 처럼 사용 가능
9) 파일이 있는 디렉토리를 내용물과 함께 삭제
$ rm -r [디렉토리명]
10) vi 편집기로 [파일명.확장자명] 파일 작성
$ vim [파일명.확장자명]
11) 터미널 창 내용 삭제
$ clear
12) 터미널 창 종료
$ exit
2. git 유저 / 업로드 설정
1) 현재 위치에서 지역 저장소를 생성
$ git init
2) 깃 환경에서 사용자 이름을 [사용자명]으로 지정
$ git config --global user.name "[사용자명]"
3) 깃 환경에서 사용자 이메일을 [사용자이메일명]으로 지정
$ git config --global user.email "[사용자 이메일명]"
4) 깃 상태 확인
$ git status
3. commit 명령어
1) [파일명.확장자명]을 스테이지에 올림
$ git add [파일명.확장자명]
2) 커밋 메시지 [메시지명]을 붙여 커밋
$ git commit -m "[메시지명]"
3) 메시지 [메시지명]을 붙여서 스테이징과 커밋을 동시에 진행
$ git commit -a -m "[메시지명]"
4) 커밋 수정하는 법
파일 수정 한 뒤
$ git add .
$ git commit --amend : 최신 커밋 수정
4. 브랜치 명령어
1) 새로운 브랜치 [브랜치명] 생성
$ git branch [브랜치명]
- 브랜치 조회하기
$ git branch
2) [브랜치명]으로 체크아웃(이동)
$ git checkout [브랜치명]
$ git checkout -b [브랜치명] # 브랜치만들고 바로 이동
- 브랜치 삭제
$ git branch -d 브랜치명
3) 최신순으로 커밋 로그 확인
$ git log
4) 전체 디렉토리를 staging area에 추가
$ git add .
5) 커밋 로그에 각 브랜치의 커밋을 그래프로 표시
$ git log --branches --graph
6) [브랜치명]을 master 브랜치와 병합
$ git merge [브랜치명]
$ git merge [브랜치명] --edit // 병합 후 바로 vi 편집기가 나오면서 커밋 메시지 수정 가능
$ git merge [브랜치명] --no-edit // 커밋 메시지 수정없이 바로 병합
7) merge 취소하기
$ git merge --abort
5. git hub 원격 저장소
1) 원격 저장소에 연결
$ git remote add origin [github 레포지 주소]
$ git remote add origin [branch 이름] #없으면 생성됨
2) 원격 저장소에 연결됐는지 확인
$ git remote -v
3) 지역 저장소의 커밋을 맨 처음 원격 저장소에 올리는 경우
$ git push -u origin master
4) 3번을 한 후에 지역 저장소의 커밋을 원격 저장소에 올리는 경우(업로드)
$ git push
$ git push origin master
5) 원격 저장소의 커밋을 지역 저장소로 가져옴
$ git pull
$ git pull origin master
6) 원격 저장소 복제하기 - 첫번째 커밋이 아니라면 pull 먼저하기
$ git clone [원격 저장소 주소]
7) [브랜치명]을 만드는 것과 동시에 체크아웃(그 브랜치로 이동)
$ git checkout -b [브랜치명]
8) 원격 저장소에 [브랜치명]의 브랜치의 커밋을 push
$ git push origin [브랜치명]
9) 원격저장소 삭제
$ git remote remove origin