본문 바로가기

Git

(6)
[Git & 소스트리] 브랜치 병합하기 / 충돌 해결하기 깃 GUI 툴인 소스트리를 이용하여 브랜치를 병합하고 병합 과정에서 발생하는 충돌을 해결하는 방법에 대해 알아보겠습니다. 1. 브랜치 병합하기 병합(merge): 하나의 브랜치를 현재 브랜치(헤드 브랜치)와 합치는 것. 예를 들어, 헤드 브랜치가 main이고 여기서 version2 브랜치를 병합하면 version2의 내용이 main에 반영됩니다. 깃에서는 merge 명령어(merge '병합할 브랜치 이름')를 사용합니다. 소스트리에서는 병합할 브랜치를 우클릭하여 병합을 선택해주면 됩니다. 병합을 할 때는 충돌이 발생할 수 있는데 충돌이 발생할 경우 다음과 같은 에러 메세지가 뜹니다. 만약 머지 이전으로 돌아가고 싶다면 돌아갈 위치에서 마우스 우클릭하여 '이 커밋까지 현재 브랜치를 초기화'를 선택해 줍니다..
[Git] 깃 기본 용어 / 주요 명령어 정리 1. 깃 기본 용어 Repository(저장소): 파일이나 폴더를 저장해두는 저장소. 저장소를 통해 작업자가 변경한 모든 히스토리를 확인할 수 있다. * 저장소는 내 컴퓨터에 있는 Local Repository(로컬 저장소)와 서버 등 네트워크에 있는 Remote Repository(원격 저장소)로 구분된다. Working Tree(작업 트리): 작업을 하는 폴더. Index(=Staging Area): 커밋 실행 전의 저장소와 작업 트리 사이에 존재하는 공간. 작업 트리에서 내용 변경을 한 후 커밋을 하게 되면 변경 사항이 바로 저장소에 기록되는 것이 아니라, 그 사이 공간인 인덱스에 먼저 파일 상태가 기록된다. Commit: 작업 내용을 변경한 후 로컬 저장소에 저장하는 작업 또는 해당 작업으로 생성..
[GitHub&소스트리] 4. 변경 사항 취소하기 & Branch 작업을 하다보면 수많은 변경 사항들이 생기고, 변경하기 이전으로 되돌아 가야 하는 상황들이 발생합니다. 그런데 변경 사항을 작성하고 저장까지 한 상태에서 다시 변경 이전의 내용으로 되돌아 갈 수 있을까요? 1) 변경 사항 취소하기 git에서는 변경 사항을 취소하기 위해 특정 커밋으로 되돌아가는 checkout이라는 명령어를 사용하는데, SourceTree에서 '코드뭉치 버리기' 기능을 이용하여 더욱 쉽게 가능합니다. 2) 브랜치(Branch) 기존의 코드를 지우지 않고 그 코드를 대체할 다른 코드를 작성하고 싶을 때 주석 처리를하곤 합니다. 하지만 기존의 코드를 주석 처리하고 새로운 코드를 작성하게 되면 코드가 지저분해지고 복잡해지면서 스파게티 코드가 되어버립니다. 이런 경우 주석 처리 대신 브랜치를 이..
[GitHub] 3. 커밋(commit) 메시지 작성법 및 주의사항 1. 커밋 메시지 작성법 첫 줄에 간단하지만 명확하게 내용을 작성합니다. 자세한 내용은 첫 줄 작성 후 한 줄을 비우고 작성합니다. 2. 주의사항 반드시 한 번에 하나의 논리적 작업만을 커밋합니다. 즉, 한 번에 한 문장으로 설명 가능한 단위로 커밋합니다. 미래의 자신과 다른 개발자와의 협업을 위해 메시지는 잘 작성해야 합니다.
[GitHub] 2. 토큰 생성 깃허브는 토큰 인증 방식을 사용하기 때문에 깃허브 로그인을 위해서는 토큰을 생성해야 합니다. 여기에서 토큰은 패스워드와 같은 역할을 합니다. 토큰을 생성한 이후에는 push할 때 토큰 인증 방식을 사용하여 로그인합니다. [토큰 생성 방법] 설정(Settings) → Developer settings → Personal access tokens → Generate new token * 생성 시에 발급 받은 토큰은 다시 확인할 수 없습니다. 반드시 토큰을 복사하여 따로 저장을 해두어야 합니다. 토큰을 저장하지 못 했다면 해당 토큰을 삭제하고 재생성(Regenerate token)합니다. * 토큰에 부여된 권한은 변경 가능합니다.
[GitHub] 1. Git & GitHUb 개념, 소스트리 1. Git, GitHub란? Git: 컴퓨터 파일의 변경사항을 추적하고 여러 명의 사용자들 간에 해당 파일들의 작업을 조율하기 위한 분산 버전 관리/형상 관리 시스템. ↳ 소프트웨어 개발에서 소스 코드를 효과적으로 관리할 수 있도록 하는 도구로서 무료, 공개 소프트웨어입니다. ↳ 작업한 파일에 대한 변경 정보를 실시간으로 기록하고, 버전 관리를 통해 체계적인 개발이 가능하도록 합니다. ↳ 소스코드를 별도로 주고 받을 필요 없이 여러 사람이 동시에 작업하는 병렬 개발이 가능합니다. * 버전 관리: 파일들을 복사, 백업, 저장 등을 해서 관리하는 것. GitHub: 분산 버전 관리 툴인 깃(Git)를 사용하는 프로젝트를 지원하는 웹호스팅 서비스. ↳ 내 컴퓨터에 있는 깃의 히스토리(기록)을 가져와서 깃허브..