건강하고 행복한 개발자 되기
로그인
건강하고 행복한 개발자 되기
로그인
[Git & Github] 난 코드로 시간여행을 해...
이승연
·
2020년 11월 25일
팔로우
0
git
github
version control system
0
Git & Github
목록 보기
1/4
Git이란
버전관리시스템! Version Control System. 내 코드의 역사를 기록하는 멋진 프로그램.
왜 쓰냐?:
최종.hwp 진짜최종.hwp 진짜진짜최종.hwp 다들 한번 해봤죠? 수정할 때 마다 파일을 새로 만들면 관리가 힘듬.
언제든 이전 버전의 코드로 돌아갈 수 있음. 따라서 원인 파악이 쉽겠지?
이력을 남기기 위해... 그러니까 누가 뭘 했는지 알기 위해!!
협업이 가능하기 때문에!
Git 외의 VCS는 많지만 Git이 전세계적으로 인기가 많음~
GitHub
git은 인터넷 없이 사용 가능. github는 인터넷이 꼭 필요한 호스팅 서비스.
git을 사용한 프로젝트의 저장소
개발자들의 social network
소소한 git tip
&&를 쓰면 두가지 명령을 함께 수행할 수 있댜
.git 파일에 모든 히스토리가 들어있다.. 근데 git이 알아서 해주는거니까 건드리지 마
-m" 같은거를 flag라고 한다
내가 어떤 프로젝트의 한 기능을 구현했을 때 펼쳐지는 프로세스
Git Repository에서 프로젝트 clone을 해온다.
내가 수정을 해볼 branch를 만든다 (main에 바로 올리지 않고! main이 실제로 배포되는 애들이다. 보통 새로운 기능을 구현할 때에는 feature/를 앞에 놓음).
내 branch로 체크아웃
열심히 파일 수정을 한다.
파일을 add하여 스테이징한다. 내 파일이 준비되었다고 알려주는 것.
커밋 & 커밋 메시지
github repository에 있는 나의 branch로 push하기
이제 main으로 Pull Request(PR): 내가 작업했으니 확인하고 괜찮으면 main으로 가져가 주세요. 이 부분은 github 홈페이지에서에서 처리한다.
나의 코드가 괜찮으면 main에서 pull하여 merge된다. 즉, 나의 코드가 main이 된다.
Remote(github)에서 main에 내 수정사항이 들어갔으니 local에도 나의 변경사항이 branch가 아니라 main이다~ 라는 사실을 알려줘야한다. 그래서 pull을 한번 더 함.
실습을 해보자
내 데스크탑으로 가서 git이라는 폴더를 만들고 거기로 감
아까 만든 git 폴더를 git repository로 만들자. (git init)
master이라는 애가 생겼다!
그리고 여러가지 파일이 생겼네
status를 확인해보니 아직 commit할게 없다
lyla라는 vim 에디터를 쓴 파일을 만들었다.
이런 에디터가 나올거다햐
status 확인해보니 빨간 색이네. 아직 커밋할 준비가 안되었다는 거다.(lyla2.md
그럼 이걸 add하자
그리고 또 status를 확인해보자: new file: lyla.md가 초록색으로 나와있네? commit할 준비가 되었다는 거다
commit하자! 잘 됐다.
한번 더 status를 확인해보자. 깨끗하군. 굿!
master가 기본 (init을 하면 master가 기본이 된다... 요즘에는 pc 때문에 main으로 바꾼다는 소문도 들려온다...)
commit마다 해쉬가 있는데(저 노란색의 길고 긴 암호같은 거) 이걸 이용하면 누가 무엇을 언제 했는지 볼 수 있다. 그러니 메세지를 언제나 잘 기입하도록.
branch를 딴다 == clone을 한다.
지금은 우선 아무데도 체크 안할거다
지금 존재하는 repository가 도착할 github 주소를 알려준다
- 내 로컬 저장소에게 remote 저장소의 주소를 보내준당(add)
git branch -M main은 master을 main이라는 이름으로 바꿔주는 애다. 아까 말한 pc문제 참고
git push -u origin main 최초 한번만....하면 된다.... 아까 주소를 정해줬으니 이제 그쪽으로 내용을 밀어주는거다!
이제 github에 들어가면 잘 들어간걸 확인할 수 있다
여기서 표 오른쪽 상단에 있는 2 commits라고 써져있는 애를 클릭하면 뭘 어떻게 바꿨는지 볼 수 있다.
Convention
나의 커밋 메세지를 명확하게 써야 많은 사람들이 바로 이해할 수 있다.
다음 링크를 참고하여 메시지를 쓰자:
https://www.notion.so/Commit-Message-Guidelines-eb3d8ebc0d014c26848ee628934ae430
git에 올릴 때 취소하는 방법들:
https://parksb.github.io/article/28.html
(감사합니다)
이승연
팔로우
다음 포스트
[Git & Github] Git Flow와 Git Rebase
0개의 댓글
댓글 작성