[Git] GitHub로 협력 시 커밋 관리하기 (push, pull)
Git 2022. 3. 29. 15:20

개념 전 글에서 Git으로 관리하는 프로젝트를 GitHub를 통해 원격 저장소로 연결하는 방법에 대해서 배웠다. 이 글에서는 GitHub로 넘긴 다음 그 이후 커밋이 생겼을 때 혹은 커밋을 받아와야할 때, 어떻게 버전 관리를 해야 하는지에 대해서 알아볼 것이다. 방법 Push : 커밋한 내용 GitHub로 넘기기 git push 전 글에서 보면 프로젝트를 GitHub로 연결하기 위해서 3줄의 코드를 복사-붙여넣기 한 적이 있다. 그 코드 중 'git push -u origin main'이라고 있는데, 이것은 origin 원격의 main 브랜치를 지정한다는 뜻이다. 따라서 push를 할 때에도 미리 지정한 게 있기 때문에 'git push origin main'이 아닌, 'git push'만 적어도 된다...

[Git] GitHub로 프로젝트 올리고 받는 방법
Git 2022. 3. 29. 11:48

개념 전 글에서 Git을 통해 프로젝트를 커밋하고, 브랜치를 나누고 하는 등의 기본적인 명령어들을 배웠었다. 단순히 Git으로만 관리하다보면 로컬 저장소인 내 컴퓨터에서만 프로젝트 관리가 가능하다는 한계가 있다. 다른 사람들과 공유도 하고 내 컴퓨터가 아닌 다른 컴퓨터에서도 작업하고 싶다면 로컬 저장소가 아닌 원격 저장소를 통해 관리가 필요한데, 이 때 이 역할을 해주는 게 바로 GitHub이다. (GitHub를 사용하기 전에 토큰을 만들고 그 토큰을 컴퓨터에 저장하는 과정 등을 거치는데, 이 과정들은 해당 글에서 다루지는 않을 예정이다. 만약, GitHub를 처음 접하시는 분이라면 토큰 먼저 등록하도록 하자.) 방법 GitHub에 내 프로젝트 올리기 git remote add origin 내 프로젝트를..

[Git] 브랜치(Branch) 병합하는 방법 (merge, rebase)
Git 2022. 3. 28. 16:49

개념 전 글에서 브랜치를 생성하고 삭제하고 이동하는 방법에 대해서 배워봤다. 브랜치를 쓰기 전에, 먼저 우리가 왜 브랜치를 쓰는지 알아야 한다. 다른 팀원들과 한 프로젝트를 같이 협업하기 위해서, 혹은 개인 프로젝트인데 다른 버전으로 테스트를 해보기 위해서 등이 그 이유가 될 것이다. 브랜치를 만드는 건 알았으니, 이제 브랜치 안에서 만든 코드(커밋)들을 메인 브랜치로 옮기는 방법에 대해서도 알아야 한다. 방법 merge로 병합하기 git switch main // 메인 브랜치로 먼저 이동 git merge (브랜치 이름) // 특정 브랜치를 메인 브랜치로 병합 git branch -d (브랜치 이름) // 병합한 후 특정 브랜치 삭제 merge의 기준은 main 브랜치이다. 즉, 우리가 merge를 통..

[Git] 또 다른 차원, 브랜치(Branch) 만들고 이동하기
Git 2022. 3. 22. 16:10

개념 영화 '닥터 스트레인지'를 보면 차원의 문이라는 마법이 나온다. 이 문을 통하면 다른 차원으로 이동할 수 있고, 다른 차원으로 사람을 보내버리기도 하고 다른 차원에 있는 사람을 같은 차원으로 데려오기도 한다. Git에도 이런 차원 개념이 있다. 바로 브랜치(Branch)이다. 브랜치는 Git이 제공하는 핵심 기능 중에 하나로 하나의 프로젝트를 여러 버전으로 관리하거나, 여러 사람이 동시에 각각의 기능을 독립되어 추가할 때 주로 사용된다. '하나의 프로젝트'라는 게 핵심이다. 방법 브랜치 조회하기 git branch 프로젝트에 여러 브랜치들이 존재할 때, 위와 같이 입력해주면 생성된 브랜치들의 목록을 볼 수 있다. 브랜치 생성하기 git branch 브랜치 이름 브랜치를 생성하는 방법은 간단하다. 위..

[Git] Git의 commit을 기준으로 과거로 돌아가기
Git 2022. 3. 22. 15:42

개념 Git을 이용해 버전 관리를 하다보면, 지금 코드가 실행이 되지 않아 예전 코드로 돌아가고 싶을 때 혹은 다시 원래의 상태로 돌아가고 싶을 때가 생길 것이다. 이를 위해 Git에서는 과거로 돌아갈 수 있는 기능을 제공한다. 방법 reset을 이용하여 아예 없던 일로 하기 git reset --hard 커밋의 해시 전 글에서 git log를 이용해 각 commit의 해시를 확인할 수 있다고 했다. reset을 이용하면 지금까지의 커밋을 모두 삭제하고, 그 때의 커밋으로 돌아갈 수 있다. (뒤에 커밋의 해시를 따로 작성하지 않을 시 가장 최근의 커밋으로 돌아간다.) 즉, 지금까지 했던 커밋들을 모두 초기화시키기 때문에 실무 협업에서는 다소 위험한 명령어이기도 하다. revert를 이용하여 특정 커밋만 ..