03 Git 기초/20230414

2023. 4. 14. 22:41
Git 설치, Git이란?, Git의 영역와 기본 명령어, 페어 프로그래밍

💡Git이란?

➡️ 개발자의 코드를 효율적으로 관리하기 위해서 개발된 '분산형 버전 관리 시스템'
➡️ 소스 코드가 변경된 이력을 쉽게 확인할 수 있고, 특정 시점에 저장된 버전과 비교하거나 특정 시점으로 되돌아갈 수 있음 

 

📍핵심 기능

- 파일의 변경 사항 추적, 사용자가 각 파일의 버전을 관리할 수 있게 도와줌
- 파일을 백업

- 협업자들과 함께 파일을 공유하고 각자의 작업물을 취합할 수 있게 도와줌

 

Git 과 Github?
➡️ Git : 소스 코드를 관리하고 추적할 수 있는 버전 관리 시스템 
➡️ Github : Git Repository를 관리할 수 있는 클라우드 기반 서비스 
    - Git으로 버전을 관리하는 폴더에 대해서 Github을 통해 여러 사람들이 공유하고 접근할 수 있음
    - 내 컴퓨터에서 Git으로 관리하는 프로젝트를 올려둘 수 있는 사이트
    - 오픈소스 프로젝트에 개발자들이 자유롭게 기여(contribute) 할 수 있음

 

💡 Git 의 영역과 기본 명령어 

📍Git의 영역

  • 온라인 : Remote Repository(원격 저장소)
  •  로컬 : Work Space(작업 공간), Staging Area(스테이징 영역), Local Repository(지역 저장소)

📍기본 명령어 

  • git init(git 초기화) : 특정 파일을 git이 관리하도록 하기 위해서 먼저 해당 파일이 존재하는 위치에서 git init 입력
  • git status : 파일들의 상태를 확인하는 명령어 
    ➡️ Untracked, Tracked(Unmodified, Modified, Staged) 파일의 상태에 대해 알 수 있음
  • git add [파일명] : Staging Area로 파일이동시키는 명령어
    ➡️ 만약 디렉토리 내의 전체 파일을 스테이징하고 싶으면 git add .  
  • git commit -m "[커밋메세지]" : commit이란 Local Repository에 파일을 저장함과 동시에 파일의 버전 기록하는 것 
    ➡️ 버전을 할 때 쉽게 구분하기 위하여 메세지 입력
    ➡️ 그냥 git commit 을 입력하면 여러 줄의 커밋메세지를 입력할 수 있는 텍스트 편집기 창 나타남
  • git log : 커밋 내역 확인하기
  • git push [리모트별칭] [브랜치이름] : 작업물을 Remote Repository로 업로드하기, 그냥 업로드하는 것이 아니고 일련의 과정이 필요
    ➡️ 원격 저장소 만들기 - 원격 저장소와 로컬 저장소 연결하기 - 업로드하기
  • git remote add [리모트별칭][Remote Repository URL] : 원격 저장소와 로컬 저장소 연결
  • git remote -v : 현재 로컬 저장소와 연결된 모든 원격저장소 목록 확인
  • git reset HEAD^ : 아직 Remote Repository에 올라가지 않은 commit 이면 명령어로 취소 가능
  • git restore [파일명] : commit 되지 않은 Local Repository의 변경사항 취소 가능
  • git clone [Remote Repository URL] : Remote Repository를 내 로컬에서 이용할 수 있도록 복사 
  • git pull [리모트별칭] [브랜치이름] : 원격 저장소와 해당 브랜치 내용을 로컬 저장소로 가져옴

제일 처음 Git을 마주했을 때는 참 피하고 싶은 존재였는데 혼자 차근차근해 보니 그렇게 무서워할 놈은 아니었다. 기본만 제대로 알아도 반은 간다. 주말에 한 번 더 복습해 보고 branch 생성도 해 볼 예정이다. 챗 GPT가 진짜 도움 많이 된다. 처음 해 본 페어 프로그래밍도 긴장했던 거랑은 다르게 재밌었다. 얄팍한 지식이만 같이 페어하는 동기 분께 도움이 된 것 같아서 뿌듯했다. 뭔가 더 열심히 해야겠다는 동기 부여도 되는 것 같다. 이번 주말은 블로그 정리도 하고 끝내지 못 했던 CSS 과제도 할 예정! 시간이 된다면 다른 동기 분들과 비교도 해 보며 서로 얘기도 나눠 보고 싶다. 오늘의 기록 끝!

'SEB_BE_45 > 공부 정리' 카테고리의 다른 글

05. Java 기초 2 / 20230418  (0) 2023.04.18
04. Java 기초 1 / 20230417  (1) 2023.04.17
02 Linux 기초 / 20230413  (0) 2023.04.14
01 웹개발 기초/20230412  (0) 2023.04.12
00 Learn How To Learn /20230411  (0) 2023.04.11

BELATED ARTICLES

more