CS/devops

    git-reset : 되돌리기

    git 을 사용하다 여러가지 이유로 뒤에서 작업하던 버전으로 돌아가야 할 때가 있다. 오류가 일어났을 수도 있고 이전 버전에서 분기를 해야할 수도 있고 혹은 새 버전을 어떤 이유로든 사용하지 않을 수도 있을 것이다. 그럴때 사용하는 것이 git reset이다. git reset은 이전에 만들어진 git log 로 이동하여 작업을 수행할 수 있게 해준다. 먼저 git log를 통해 commit 기록을 보면 다음과 같다. 가장 위 버전이 최신 commit이므로 바로 전 commit으로 이동하는 경우를 보겠다. git reset은 크게 보면 git reset {commit log} git reset --soft {commit log} git reset --hard {commit log} 의 3가지 버전이 있다..

    git flow-다른 fork에서 fetch merge하기

    여러 명과 git flow를 이용해 협업을 하면, 다른 사람이 작업한 작업물을 내 fork로 가져와 최신화를 시켜주어야 한다. 만약 develop을 최신화 하고 싶다면 % git fetch upstream devlop 으로 fetch를 진행해준다. 그 다음 % git merge FETCH_HEAD 를 진행해주면 된다. FETCH_HEAD 는 가장 최신 상태를 의미한다. release가 완료된 main을 최신화 할 경우 % git fetech upstream main % git merge FETCH_HEAD 으로 진행한다. 위 두 경우 모두 로컬에서 진행되는 것이기 때문에 머지한 후에는 remote로 push를 하는 것이 좋다.

    git-git flow 사용하기

    git으로 여러 명이 협업하기 위한 마지막 단계로 git flow가 있다. git flow는 하나의 프로젝트를 여러 명이 개발하고 관리하기 위한 하나의 확장 프로그램이다. 여러 개의 branch를 사용하는 컨벤션을 제공하고, 이를 여러 명이 fork하여 사용할 수 있게 해준다. 먼저 git flow를 설치해야 한다. 설치를 완료하면 자신이 작업할 repo를 클론해온다. 그 후 그 repo에서 git flow init을 하고 기본 설정을 사용하기 위해 enter를 치면 2개의 브랜치가 생긴다. git branch 로 확인한 branch 를 보면 2개의 branch가 존재한다. 그 중 main은 일반적인 상황에서는 절대 건드리지 않는다. 실제 서비스로 배포할 때 사용하는 용도이다. develop이 우리가 사..

    git-commit convention

    git을 쓰는 이유는 다양하지만 역시 버전관리와 협업이 그 중 가장 큰 비중을 차지할 것이다. 따라서 버전관리와 협업에서 도움을 주기위해선 commit message를 공들여 만들 필요가 있다. function을 바꾸고 commit message에 ''function change' 라고만 적으면 무슨 함수를, 어떻게 바꿨는지 전혀 티가 나지 않기 때문에 협업에도 안좋고 심지어 혼자하는 프로젝트여도 시간이 지나면 내가 뭐 한건지 알 수가 없다. 따라서 commit message 쓸 때 이렇게 작성하자! 라는 convention이 존재한다. 물론 회사마다, 팀마다 약간의 차이는 있겠지만 습관으로 익혀두면 어딜 가서든 금방 적응할 수 있을 것이다. 1. 머리말을 쓰자. 머리말은 분류를 나타낸다. 내가 하는 이..

    git-개인 repo clone, add, commit, push

    '본 글은 mac 시스템에서 돌아감.' git은 버전관리 시스템이다. git에 대한 자세한 설명은 다음에 쓰겠다. 여기서는 그냥 git 사용법만 알아볼 것이다. 가장 먼저 할 것은 git과 로컬을 연동하고 repo를 만드는 것인데, 그것도 나중에 알아보겠다. (한번에 하기에는 양이 너무 광범위하다.) github에서 repo를 만들고 나면 그 repo의 (gitlab 등의 사이트도 물론 가능하다.) Clone을 가져올 수 있다. 원하는 링크를 선택하면 터미널을 이용해 %git clone {주소} 를 적는다. 그러고 나면 해당 repo가 폴더로 생성된다. 그 해당 폴더로 들어가 % ls -a 를 입력하면 .git 파일이 들어가 있는 것을 확인할 수 있다. 해당 파일이 git의 기능을 가능하게 해주는 파일이..