본문 바로가기

Git & GitHub

[Git & GitHub] 깃허브로 협업하기 - fork / pull requests 깃헙으로 협업하기 위한 전체적인 과정들을 간략하게 정리해 보려고 한다. 다음 과정은 외부 원격 저장소에서 for하여 내 원격저장소로 가져와서 pull requests를 요청하는 방식으로 진행된다. 현업에서 가장 많이 사용하는 방법이라고 한다. 깃헙 기본 개념 - remote : 원격 저장소 - local : 로컬 저장소 - push : 파일을 업로드 하는 것이 아니라 버전을 업로드 하는 것이 push다. 소유하지 않은 원격저장소는 기본적으로 push가 불가능하다. => 콜라보레이터에서 add people하면 가능은 하지만, 이렇게 되면 무분별한 push로 저장소가 어지럽혀지기 때문에 권장하지 않는다. *푸쉬권한 최소화 => 푸시 권한은 팀장 등 책임자만 부여 하는 것이 좋다. *push권한을 아무한테나 .. 더보기
[Git & GitHub] 깃허브로 협업하기 - (3) git graph, fetch, pull, branch, switch, checkout, merge 명령어 사용하기 지난 번에 협업 repo에서 새 프로젝트를 clone한 것에 이어서, git-flow에 대한 브랜치 규칙과 commit 규칙까지 설정하였다. [Git & GitHub] 깃허브로 협업하기 - (1) Organization, clone 이번에 참여하게된 향수 프로젝트에서 새로운 FE 주니어 개발자 분이 합류하게 되면서 깃을 사용한 협업이 반드시 필요한 상황이 되었다. 지금까지는 혼자 프로젝트에 add - commit - push 하는 과정 junvelee.tistory.com 이번에는 git fetch로 현재까지 작업내용을 불러와 git graph를 확인하고, 해당 브랜치의 변경사항을 pull 한 후, 이어서 기능별 브랜치를 생성해 작업한 후 해당 기능별 브랜치에 add - commit - push 하는 과.. 더보기
[Git & GitHub] 깃허브로 협업하기 - (2) Git-flow(branch, commit Convention) FE 개발자 분과 함께 앞으로의 협업을 위한 Git-flow를 설계하였다. FE 팀은 2명이기 때문에 git-flow 전략이라고 하기엔 비교적 간단하지만 Branch 설정과 Commit Convention을 함께 설정하였다. 규모가 큰 프로젝트일 경우 아래 우아한 형제들의 Git-flow 전략을 참고하면 효율적으로 프로젝트를 관리할 수 있을 것이다. 우린 Git-flow를 사용하고 있어요 | 우아한형제들 기술블로그 {{item.name}} 안녕하세요. 우아한형제들 배민프론트개발팀에서 안드로이드 앱 개발을 하고 있는 나동호입니다. 오늘은 저희 안드로이드 파트에서 사용하고 있는 Git 브랜치 전략을 소개하려고 합 techblog.woowahan.com 1. Branch 규칙 1. branch 설정 main,.. 더보기
[Git & GitHub] 깃허브로 협업하기 - (1) Organization, clone 이번에 참여하게된 향수 프로젝트에서 새로운 FE 주니어 개발자 분이 합류하게 되면서 깃을 사용한 협업이 반드시 필요한 상황이 되었다. 지금까지는 혼자 프로젝트에 add - commit - push 하는 과정으로 진행하였기 때문에 별다른 문제 상황이 없었지만 이제는 다른 개발자분과 협업하게 된 이상 깃 사용범위를 확장시켜야 하기 때문에 여러가지 깃 명령어를 공부하면서 협업에 꼭 필요한 깃 사용법을 숙지하려고 한다. 1. Github에서 협업용 단체(Organization)를 생성 우선 Github에서 협업용 단체(Organization)를 생성한다. 현업에서는 주로 Organization을 이용하여 협업을 진행한다고 한다. 내 프로필을 클릭하여 > your organizations 에서 확인할 수 있다. .. 더보기
Git · GitHub 삭제한 커밋(commit) 복구하기 [ 삭제한 커밋 복구하는 방법 ] 1. git reflog 명령어로 기록 찾기 먼저 git reflog 명령어로 그동안 기록해온 목록들을 가져온다. git reflog 되돌리고 싶은 시점을 찾은 후, 2. git reset --hard [복구할 시점] 복구할 시점으로 git을 reset한다. git reset --hard e4c6cca // 복구할 시점 복구가 완료되었다. 3. git push 복구된 커밋을 다시 push해 준다. 기존에 커밋했던 날짜대로 커밋이 무사히 복구된 것을 확인할 수 있다. 커밋 복구 완료! 더보기
Git · GitHub 커밋(commit)삭제하기 - git bash 명령어 [ Git·GitHub 커밋 삭제하기 ] - 깃과 깃헙을 사용하다보면 커밋 실수, 또는 수정 및 삭제하고 싶은 경우가 종종 발생한다. 평소에는 소스트리를 사용하여 깃을 관리하지만 Git Bash로 명령어를 사용하면 간편하게 커밋을 삭제할 수 있다. 1. commit을 삭제하고 싶은 로컬 폴더에서 > Git Bash Here를 클릭해 이동한다. 2. 커밋 기록을 확인해 본다. > 최근 커밋한 기록들이 보인다. git log - q 눌러서 나가기 3. 커밋을 삭제한다. > 가장 최근의 커밋부터 n개를 입력하여 여러개 삭제가 가능하다. git reset HEAD~n git log git log로 삭제되었는지 커밋 기록을 다시 확인해 본다. - q 눌러서 나가기 4. 원격 저장소에 커밋을 push한다. git .. 더보기
Git · GitHub 시작하기_4. 소스트리(SourceTree) 사용해 보기 [ GitHub 사용법 요약 정리 ] github에 소스 업로드하고 다른 사람과 공유하기 - 저장소 클론(복사) 후 > 업로드할 파일 선택하고 add > commit > push 1. github 가입 2. github 저장소(repository) 생성 3. github 저장소 클론 4. 내 컴퓨터의 내 문서 아래에 생성된 프로젝트 디렉토리에서 파일 생성 및 작업 완료 5. 커밋할 파일들 선택해서 스테이지에 올리기(add) - 커밋하기 전에 저장을 원하는 파일들을 묶는일을 해야 한다. 이 작업을 스테이지에 파일을 올린다(add)라고 한다. (ex : 1~10 중 1~5번만 add한다.) 6. 커밋하기(commit) - 게임의 저장하기에 해당하는 행동을 git에서는 커밋이라고 한다. 다시 말해 언제든지 커.. 더보기
깃(Git)과 깃허브(GitHub)란 무엇인가? - 버전관리와 형상관리 [ '버전관리'와 '형상관리' ] 버전 관리 : 소프트웨어의 소스 코드 변경사항을 '버전'이란 개념을 통해 관리하는 것을 말한다. 형상 관리 : 소프트웨어의 변경사항을 체계적으로 추적하고 통제하는 것의 포괄적 의미로, 소프트웨어 소스 코드 뿐 아니라 개발 환경, 빌드 구조 등 전반적인 환경 전반적인 내역 등 프로젝트와 관련된 모든 변경사항을 관리하는 것을 말한다. 버전 관리는 '클라이언트 - 서버 모델(CVCS)'과 '분산 모델(DVCS)' 2가지로 나뉜다. 분산 모델(DVCS)은 프로젝트에 참여하는 모든 클라이언트(개발자)가 전체 저장소에 대한 개별적인 로컬 저장소를 갖고 작업하는 형태이다. 클라이언트-서버 모델과는 다르게 클라이언트(개발자) 각자가 온전한 전체 저장소의 사본을 로컬에 가지게 된다. 이.. 더보기

728x90
반응형