[git] git의 기초

jaylight·2020년 11월 25일
0

Git

Git: Version Control System(VCS)

  • Version은 개별적인 업데이트 기록들
  • VCS는 버전에 따른 변경 사항을 기록하고 관리해주는 시스템이며, Git은 그 중 하나

버전관리를 하는 이유
1. 수정할 때 마다 파일을 새로 만들면 관리가 힘들기 때문에
2. 언제든 이전 버전의 코드로 돌아갈 수 있기 때문에
3. 이력을 남기기 위해
4. 하나의 프로젝트를 여러명의 개발자들이 협업할 수 있음

Version Control Systems
Subversion, CVS, Mercurial 등이 있지만, 최근에는 Git이 가장 많이 활용됨

GitHub

GitHub

  • Git을 사용한 프로젝트들의 저장소
    • Git은 Local에서 작동하며 Internet이 필요없지만, GitHub은 인터넷에 연결하여 공유할 수 있음
  • 개발자들의 Social Network

Git vs GitHub

  • Git: 프로젝트의 버전관리를 도와주는 시스템
  • GitHub: Git을 이용해 버전관리를 한 프로젝트들을 관리하게 해주는 호스팅 서비스

Git 실습

vim을 쓰는 이유, 어떤 환경에서든 활용하기 위해
vim 기본 명령어

'i': 입력
'o': 다음 줄부터 입력을 시작
'esc': 입력 모드에서 나가기
':': 명령어 입력을 시작
':wq': 저장하고 종료
':q!': 변경사항 저장 없이 종료
mkdir git && cd git

git init # git/안에 빈 깃 저장소(Repository)를 초기화

ls -al # .git이라는 폴더가 생김 # 앞에 .이 붙으면 숨겨진 폴더라는 뜻
# git을 통해 이력관리를 볼 수 있는 파일

git 명령어

git status # git으로 트랙 중인 현재 폴더의 진행 상황을 보여줌

# 파일을 생성 후 git status의 변화를 파악
vim jaehyeoklee.md # jaehyeoklee.md 파일을 생성
git status # 새로 생성된 파일이 'Untracked files'에 추가됨

git add . # git이 관리하는 파일에 파일을 추가 (.을 쓰면 해당 폴더 내 파일을 모두 git에 추가)
# 개별적으로 파일을 추가할 일이 많지 않으므로 보통 위의 명령어를 활용함)

# 빨간색으로 표시된 파일: 추적하지 않는 파일 (해당 파일의 변경 사항을 git에 기록하지 않음)
# 초록색으로 표시된 파일: 추적하는 파일 - commit을 통해 변경사항을 기록

git commit -m "jaehyeok.md 파일 추가"

# '-m' flag: 이어서 commit에 관한 메세지를 남김
# 오류메세지가 나오지 않는다면 정상적으로 commit된 것

위의 경우 commit을 할 경우,아래와 같은 메세지가 출력됨

 1 file changed, 1 insertion(+)
 create mode 100644 jaehyeoklee.md
git log # git의 변경 log를 조회
# q를 통해 log 파일에서 나갈 수 있음

만약에 파일을 수정하고 저장한뒤 다시 git status를 사용하면, 수정한 파일을 별도로 보여줌

git status
git add .
git commit -m "2번째 줄 추가" # commit
git status # 아무것도 안뜸
git log # 새로운 수정사항이 표시 됨

만약 위의 프로젝트 폴더를 그대로 github 등에 업로드하면, commit 내역을 모두 볼 수 있음

브랜치
작업 중에 보존해야 할 원본을 두고 추가적인 수정을 하는 개념
→ 나중에 배움

GitHub 실습

New Repository 만들기

두 번째 항목을 보면 기존에 local에서 가지고 있는 Repository를 업로드 하는 방법을 알려줌

# local의 repository를 origin이라는 이름의 원격 주소로 보냄
git remote add origin https://github.com/leejaek/backend-15.git

위의 명령어를 local의 git 디렉토리에서 입력해주면 추가됨

# remote repository를 확인
git remote -v

mastermain으로 이름을 변경

# master를 main으로 변경
git branch -M main

# 현재 branch를 확인
git branch

자동으로 push 되도록 설정

git push -u origin main

위 과정을 거치면 아래와 같이 commit 된 결과를 gitHub에서 볼 수 있음

0개의 댓글