Git을 사용하는 이유는 전의 글을 통해서 설명한 바 있지만
간략히 얘기하자면
프로그램의 버전 관리를 위한것이고
로컬 저장소에 있던 프로그램을 원격 저장소에 올림으로써
다른 사람과 공유해서 협업을 하는 목적이 있다.
우선 로컬 저장소를 Git이 관리하도록 하는 작업이 필요하다.
1. git init
관리하고자 하는 폴더의 위치에서 위의 명령어를 입력하면
.git 파일이 생성되며 git이 관리하는 폴더가 되며 아래의 명령어들을 사용할 수 있다.
(최초에 한번만 실행하면 되는 명령어이다!)
2. git status
현재 git의 상태를 알 수 있는 명령어로
어떤 단계에 있는지 알 수 있고 어떤 작업을 수행해야 할지 알 수 있다.
다음 명령어를 알기 전에 유의해야 할 점은
모든 작업은 수정 - 저장 - add - commit 의 순서를 지켜야 한다는 것이다.
3. git add a.txt // a.txt를 stage에 올린다
git add . // 수정-저장된 모든 파일을 stage에 올린다
만약 git을 이전에 사용한 적이 없는 사람이면 너 누구니? 라는 에러메세지가 뜰 것이다.
그래서 내가 누구인지 선언해주는 단계가 필요하다.
git config --global user.name "이름"
git config --global user.email "이메일"
명령어를 통해 나를 선언해 줄 수 있고
이때 이메일은 github에서 사용하는 이메일과 같아야
contribution에 잔디를 심을 수 있다.
(이와 관련해서 다른 게시글로 자세히 찾아오겠다)
선언된 정보를 확인하고 싶으면
git config --global --list
명령어를 사용하면 된다.
4. git commit -m 'init commit'
stage에 올라와 있는 파일들을 git으로 커밋한다.
모든 커밋은 고유한 해시값으로 이루어져 있다.
이 단계까지는 git이라는 프로그램을 사용한 것이며
github 서비스(인터넷)까지 가지 않은 상태이다.
만약 커밋메세지를 수정하고 싶다면
git commit --amend 를 통해 수정할 수 있다.
git log 를 통해 현재 commit된 상태로그를 확인할 수 있고
git log -oneline 을 이용하면 한줄로 확인할 수 있다.
그렇다면 이제 Local과 remote를 연결해주는 단계가 필요하다! (처음부터 연결해주어도 좋다)
5. git remote add origin 주소
본인이 Github에서 생성한 repository에 들어가보면 https://github.com/자기이름/리포지토리이름.git 와 같은 주소가 있을 것이다.
이 주소를 위의 명령어와 함께 입력해주면 Local과 Remote를 연결할 수 있다.
git remote -v
이 명령어를 통해 상태를 확인 할 수 있다.
6. git push origin master
이 명령어를 입력함으로써 Hub가 내가 커밋한 상황을 알게된다.
7. git pull origin master
협업을 하는 상황해서 다른 사람이 올린 상태를 내 로컬에 적용하고 싶다면
위 명령어를 입력하여 받아와야 한다.
pull을 하지 않고 작업을 하고 push를 하게될 경우 충돌이 일어날 수 있기 때문에
협업자와 소통을 통해 push / pull 을 사용해야 한다.
(보통의 경우 같은 파일을 수정했을때 충돌이 발생한다.)
만약 내가 기존에 사용하던 pc가 아닌 새로운 pc에서 작업을 한다면 어떻게 해야할까?
8. git clone 주소
클론(복제)할 리포지토리의 주소를 이용해 원격에 있는 프로그램을 그대로 로컬로 받아 올 수 있다.
클론해온 뒤 평소와 같이 add commit push하여 git을 사용할 수 있다.
이렇게 CLI를 이용하여 Git을 사용하는 법을 알아보았다.
8가지 명령어를 통해 기본적으로 Git을 운용할 수 있을것이다.
하지만 이것이 Git의 전부는 아니다.
ignore / branch / Fork / Pull Request 와 같은 개념들도 있다.
이는 다음에 찬찬히 알아보도록 하고,,
글을 마치도록 하겠다 ^*^
'프로그래밍 > Git' 카테고리의 다른 글
[Git] README 작성하는 방법(이모지, 기술스택) (0) | 2022.10.08 |
---|---|
[Git] 이전 커밋 user.email 바꾸기 - 잃어버린 내 잔디 심기 (1) | 2022.07.11 |
[Git] CLI (Git Bash) 를 통해 Git 사용하기1 - CLI 기초 (0) | 2022.07.10 |
[ Git ] Conflict상황 시 해결 방법(visual studio merge tool 사용 방법) (0) | 2020.10.11 |
[ Git ] Visual Studio GitHub 연동 방법 정리 (0) | 2020.10.11 |