본문 바로가기

Github

(10)
07_명령어로 깃 다루기 깃 명령어를 알아야 하는 이유 지금까지 배운 소스트리는 일종의 보조 도구일 뿐이다. 소스트리를 이용하지 않고도 얼마든지 능수능란하게 버전을 관리할 수 있다. 소스트리는 처음 배울 때 시각적으로 더 쉽게 익힐 수 있으나, 깃 명령어 몇 줄 입력하면 버전 관리가 끝나므로 숙지하면 더 빠르고 간편하다. ![img](https://blog.kakaocdn.net/dn/b7QAbb/btrRuw0kUEt/bgH1K6uPKrmviuvzJxI3aK/img.png) 저장소와 버전 만들기 실습은 git bash에서 해보자. pwd : 현재 경로 보기 비어있는 git 저장소 생성하기 git init .git 폴더가 생성된다. .git이 있는 이 공간이 작업 디렉터리다. touch : 파일 생성하기 touch a.txt 현재..
06_02_깃허브로 협업하기: Pull Request Pull Request 원격 저장소가 내 변경사항을 풀(Pull)하도록 요청(Request)을 보내는 방식 ![img](https://blog.kakaocdn.net/dn/cYGY29/btrRo4q5sZF/gUIQOpUXR5cPm5QIibZoB0/img.png) Pull Request 해보기 Pull Request 5단계 기여하려는 저장소를 본인 계정으로 **포크**하기 포크한 저장소를 **클론**하기 브랜치 생성 후 **생성한 브랜치에서 작업**하기 작업한 브랜치 **푸시**하기 **풀 리퀘스트** 보내기 1. 기여하려는 저장소를 본인 계정으로 포크하기 ❓포크(fork) A *fork* is a copy of a repository. Forking a repository allows you to fre..
06_01_깃허브로 협업하기: 연동 및 clone, push, fetch, pull 깃허브 (1) 개발자들의 SNS stars 좋아요 누른 프로젝트 목록 많은 star를 받은 프로젝트는 개발자의 큰 경쟁력이 된다. issue 버그 제보 및 앞으로 개발해야 할 것들을 명시하는 곳 (2) 원격 저장소 호스팅 서비스 원격 저장소? 컴퓨터 속에만 있는 저장(로컬 저장소)가 아닌, 인터넷 세상 어딘가(원격)에 있는 다른 컴퓨터 속의 저장소 깃허브가 관리하는 원격 저장소에 프로젝트를 업로드하면 백업이 용이해짐. README.md 프로젝트 설명서 깃허브와 소스트리 연동하기 SSH (Secure Shell) 깃허브와 우리 컴퓨터가 안전하게 통신을 주고 받을 수 있는 방법 SSH 통신으로 깃허브와 통신하는 방법 ![img](https://blog.kakaocdn.net/dn/kHeYw/btrRnuwSU..
05_브랜치로 나누어 관리하기 브랜치란: 브랜치를 나누어 관리하는 이유 브랜치는 **버전의 분기**다 (버전의 새로운 흐름) =버전을 여러 개의 흐름으로 관리하는 방법 브랜치로 버전의 분기를 관리하는 방법 브랜치를 **나눈다**. 각자의 브랜치에서 **작업한다**. (필요하다면) 나눈 브랜치를 **합친다**. ex - 브랜치로 문제 해결하기 ex-1) 같은 부분을 다르게 수정한 부분만 보면 됨 ex-2) 브랜치 나누기 최초의 브랜치, master(or main) 브랜치 가장 기본적인, 최초의 브랜치 우리가 지금까지 만든 커밋들은 모두 기본적으로 master 브랜치에 속해 있다. 브랜치 커밋 개수? master 브랜치 : 커밋 3개 foo 브랜치 : 커밋 5 master 브랜치: 커밋 4개 foo 브랜치 : 커밋 5개 bar 브랜치 :..
04_버전 가지고 놀기 버전 비교하기 커밋 전/후 비교하기 커밋한 내역을 선택하여 이전 버전과 비교하면 됨 서로 다른 두 버전 비교하기 **버전 + ctrl + 또다른 버전**을 눌러 선택하고 하단의 파일을 누르면 하단 우측에서 서로 다른 두 버전을 비교할 수 있다. 당시 버전 파일 보기 커밋 선택 > 파일 선택 > 오른쪽마우스 > 선택한 버전 열기 버전을 되돌리는 방법: revert, reset **revert** : 버전을 되돌린 새로운 버전 만들기 **reset** : 버전을 완전히 되돌리기(시간 되돌리기) revert 이전 버전(1~5)은 유지가 된 채 새로운 버전 만듦 reset 유지X. 시간 되돌리 듯 이전 버전으로 아예 돌아감 reset 종류 **soft** : 커밋, 스테이지, 작업 디렉터리까지 되돌리기 **mi..
03_버전이 쌓여 사용자에게 선보이기까지: 커밋해시, 태그 커밋 해시 각 버전을 지칭하는 고유 번호 실제 커밋 해시는 너무 길어서 앞자리만 따서 더 짧고 간단하게 나타낸다. 태그 태그란? 특정 커밋을 가독성있게 지칭하도록 하는 꼬리표 커밋1 커밋2 커밋3 커밋4 ... 커밋12 오른쪽 마우스 > 태그 태그 이름 작성하고 태그 추가 클릭 커밋에 태그가 생성되었다. 태그 삭제하기 태그 > 태그에 오른쪽 마우스 > 삭제
02_깃으로 버전 관리 시작하기 로컬 저장소 만들기 생성하기 버튼 클릭 .git 숨김 폴더가 생성된다. 숨김 폴더 보기: 옵션 > 보기 > 숨김 파일 및 폴더 표시 체크 버전 관리의 큰 그림 깃이 관리하는 세 개의 공간 **작업 디렉터리(work tree)** : 버전 관리의 대상이 위치하는 공간. .git이 있는 폴더. **스테이지(index)** : 다음 버전이 될 후보가 올라가는 공간 **저장소(repository)** : 버전이 만들어지고 관리되는 공간 스테이지, 저장소는 깃이 관리하는 가상의 공간임 작업 디렉터리에서 발생하는 모든 변경사항이 모두 새로운 버전이 되진 않는다. 그래서 변경사항 중 버전이 될 후보들을 선별하여 스테이지로 올린다. 이를 staging이라 한다. (**add**) 스테이지에 있는 파일들을 저장소로 올려..
01_git 준비하기 깃이 없는 세상: 버전과 버전 관리 깃이 없으면? 변경 내역 확인이 어렵다 작업을 되돌리기 어렵다 협력하기 어렵다 이러한 어려움을 느낀 리눅스 창시자 Linus Torvalds 리눅스는 오픈소스이므로 개발자들이 소스코드에 기여할 수 있다. 리눅스를 구성하는 소스코드의 길이는 무려 27.8 만 줄이나 되는데, 이 정도 분량의 코드가 시시각각 변화한다. 이 정도 크기의 프로그램의 변경사항을 확인하고, 작업을 되돌리고, 협업하기란 어렵다. 그래서 '변경 사항(=버전)을 좀 더 일목요연하게 관리해보자!'라는 목적으로 Git을 만들었다. 버전 유의미한 변화가 결과물로 나온 것 프로그램 개발 == **유의미한 변화(=버전)**를 쌓아 프로그램을 만들어 나가는 것 버전 관리? (깃이 없을 때 문제들을 해결) 변경 내..

반응형