개발자라면 필수인 버전관리시스템 git,github에 대해 알아보자.
git의 공식명칭은 분산버전관리시스템(VCS)으로, 프로젝트 파일의 변경사항을 추적하는 시스템을 말한다.
GitHub는 분산 버전 컨트롤 소프트웨어 Git을 기반으로 소스 코드를 호스팅 하고, 협업 지원 기능들을 지원하는 마이크로소프트Microsoft의 웹서비스이다.
깃허브의 핵심 기능은 Git 원격 저장소 호스팅이다. 쉽게 말하자면 '폴더'인 셈이다. 깃 저장소를 원격에서 호스팅할 뿐만 아니라, 이슈 트랙커, 풀리퀘스트, 소스코드 탐색, 위키, 인사이트 등의 기능을 제공한다.
Local repository
: 로컬 버전의 프로젝트 저장소
Remote repository
: 로컬저장소와는 반대로 내 컴퓨터가 아닌 외부버전의 프로젝트 저장소. 이 곳에서 프로젝트 코드를 공유하고, 확인할 수있어서 팀작업에 유용하다. 로컬 버전의 프로젝트와 병합하고, 변경사항을 적용하는 것도 가능하다.
git init
: 저장소를 만들고, git으로 프로젝트 관리를 시작한다. 터미널에서 프로젝트 폴더로 이동 후 명령어 입력. 이 명령어는 프로젝트 폴더 내에 숨겨진 .git 디렉토리를 생성한다.
git status
: 저장소의 현재 상태(파일의 변경,추가,수정)를 확인할 수 있다.
git add
: 원하는 파일들을 staging area로 추가해줄 수 있다.(git add . : '.'을 통해 모든 파일을 한번에 추가할 수 있다.)
git commit -m "message"
: 현재 버전의 코드를 커밋에 저장한다.
git log
: 프로젝트의 모든 커밋내역을 확인할 수 있다.자세한 작성자, hash 값, 날짜와 시간, 커밋 메세지와 같은 자세한 정보를 담고있다.
*.gitignore
: git 에서 관리하지 않아도 되는 파일이 있다면, .gitignore
파일을 프로젝트 폴더에 생성하면 된다. 파일 안에, 해당하는 파일명과 폴더명을 새로운 줄에 입력하여 나열하면 된다.
//예시
.DS_*
*.log
logs
**/*.backup.*
**/*.back.*
브랜치란 독립적으로 어떤 작업을 진행하기 위한 개념이다. 필요에 의해 만들어지는 각각의 브랜치는 다른 브랜치의 영향을 받지 않기 때문에, 여러 작업을 동시에 가능하게 한다.
저장소를 처음 만들면, Git은 바로 'master'라는 이름의 브랜치를 만든다. 이 새로운 저장소에 새로운 파일을 추가하거나 추가한 파일의 내용을 변경하여 그 내용을 저장(커밋)하는 것은 모두 'master' 라는 이름의 브랜치를 통해 처리할 수 있다.
'master'가 아닌 또 다른 새로운 브랜치를 만들어서 선언(체크아웃)하지 않으면, 모든 작업은 'master' 브랜치에서 이루어진다.
1.원하는 directory 이동 후 해당 저장소(repo)를 클론에 받는다.
2.작업환경인 브랜치를 생성한다. 보통은 기능별로 브랜치를 만든다.
ex) git branch feature/login(로그인페이지) feature/signup(회원가입페이지)
3.작업완료 후 변경사항 확인하고, stage, commit, push.
*마스터브랜치에서 작업하고 push하면 안됨. 다른 브랜치를 생성하고, 그 브랜치에서 작업해야 한다.
...사진 표시까지하면서 정확하게 정리해주셨네요. git을 모르는 사람도 연정님 블로그를 보면서 따라할수 있을 것 같아요. 프론트엔드가 지녀야할 소양 중 하나인 디테일함이 있으시군요 !