Git
-
[git] 실제 프로젝트에 적용하는데 필요한 tipGit 2021. 8. 20. 20:48
1. git branch 활용 부서마다 다르지만, 브랜치를 만들기 전에 이슈 생성을 먼저 진행합니다. # 참고 사이트 : github issue template site 부서에서 진행하는 형식에 맞게, 브랜치 이름 및 컨벤션을 지켜야 합니다. # 참고 사이트 : git/github branch standards & conventions site 커밋 메시지를 재밌게 남기기 위해서 깃모지를 사용하기도 합니다. # 참고 사이트 : gitmoji site 2. commit 활용 1) checkout을 활용한 커밋 '이동' HEAD로부터 몇번 째 혹은 해당 commit_id로 이동할 수 있습니다. 이때 임시 브랜치(?)로 해당 커밋이 나타나고, 해당 커밋의 소스파일을 새롭게 커밋하고싶다면 merge 작업을 거치..
-
[git] workflowGit 2021. 8. 20. 00:14
팀원들과 프로젝트를 진행하면 필연적으로 git을 사용합니다. 혼자가 아닌 다양한 개발자와 협업하기 위해서는 'branch간의 규칙'을 정해야하고 이를 'git branch strategy'라고 합니다. 만약 규칙이 정해져 있지 않다면 "어느 branch에 push해야되지?", "급하게 수정 후 배포해야되는데 어떤 branch가 최신이지?"에 대한 고민이 생깁니다. 즉, 여러명이서 git을 '잘', '효율적으로' 사용하고 싶어 다양한 work flow(작업 흐름)가 존재합니다. 여기에는 git-flow, github-flow gitlab-flow 등 다양한 모델이 존재합니다. 1. git flow 항상 유지되는 메인 브랜치 (master, develop)와 일정 기간 동안만 유지되는 보조 브랜치 (feat..
-
[git] GithubGit 2021. 8. 13. 15:08
1. github란 'git 원격 저장소'를 제공 해주는 서비스입니다. git 원격 저장소를 지원해주는 서비스는 github, gitlab, wiki 등이 있습니다. 필요한 이유 팀 개발 시 다른 사람과 작업 내용을 공유하여 '협업' 할 때 유용합니다. ex) fork, pr, merge etc 개인 프로젝트시 '백업용'으로 유용합니다. 소스코드 '공개용'으로 유용합니다. 2. 원격 저장소 명령어 1) git remote 원격 저장소 관련 명령어입니다. $ git remote add remote_alias remote_url github 원격 저장소 url의 '별칭'을 지정합니다. 이떄, remote_url은 .git 끝까지 복사하고, https로 연결된 링크를 가져오는 것이 좋습니다. $ git rem..
-
[git] CommandGit 2021. 8. 12. 22:52
1. git 기본 명령어 $ git init 명령어 $ git init 현재 디렉토리에서 git 버전 관리함을 선언합니다. 이때 .git directory가 생성됩니다. $ git config 명령어 $ git config --global user.name 'name' $ git config --global user.email 'email@gmail.com' git 유저명 및 이메일을 설정하는 명령어입니다. 만약 git commit 할 때 로그인이 안되어 있으면 에러가 발생해서 위 방식으로 로그인 해야합니다. $ git add 명령어 $ git add test.txt $ git add . add 명령어는 해당 파일을 추적하겠다는 의미인데, 추적된 파일들은 staging area[.git directory..
-
[git] IntroduceGit 2021. 8. 11. 15:20
1. git이란? 소스코드를 효과적으로 관리하기 위한 '분산형 버전 관리 시스템[DVCS]'입니다. Q) 버전 관리 시스템이란? A) 파일 변화를 시간에 따라 기록했다가 나중에 특정 시점의 버전을 다시 꺼내올 수 있는 시스템입니다. 프로젝트 버그시 누가 문제를 일으켰는지 '추적'할 수 있습니다. 파일을 잃어버리거나 잘못 고쳤을 때 원하는 버전으로 쉽게 '복구'할 수 있습니다. 팀 프로젝트시 branch, merge 등 '협업'을 수월하게 할 수 있습니다. Q) Distributed Version Control System이란? A) 단순히 서버 파일의 마지막 버전 스냅샷만을(특정 버전의 소스코드) 저장하지 않고, 로컬 저장소에 델타, 스냅샷 등의 모든 히스토리를 복제합니다. 만약 서버에 문제가 생기면 로..