-
SourceTree를 이용한 GitIT Tech/Git 2019. 8. 15. 13:49
소스트리를 이용한 깃 관리. Git Bash를 이용한 관리는 흔히 사용되는 리눅스 명령어를 통해서 확인을 할 수 있는데
Branch가 많아지거나 작업이 여러명으로 가게 되면 한눈에 파악하기가 힘들다는 점이 존재한다.
아마 아직 Git에 대한 기능을 많이 알지 못하는 것도 있지만.
사용하거나 배우면서 필요한 것들을 생각을 해보았다.
일단, git clone을 통하여 자신이 원격(remote)에서 작업하고 있는 프로젝트 폴더를 불러오도록 하자.
필자는 Algo라는 프로젝트로 하였다.
Git Bash를 이용하였을 때, commit, push, pull, branch 등등 기본적인 기능들이 UI형태로 존재해서 Git Bash를 사용해보았다면 익숙하다.
여기서는
첫 짤의 일부분인데 한 번 확인을 해보자.. 여기서 master, origin/master, origin/HEAD 가 존재하는데 지금 test라는 이름에 위치해 있다.
여기서 이 세 가지가 무엇을 하는지 처음에 궁금했고 commit, push할 때마다 같이 움직이는 것이 있고 아닌 것이 있는 점이다.
생각보다 어렵지 않고 주소가 어디를 가리키고 있는지 알고 있으면 편하다.
master는 현재 local 컴퓨터에 존재하는 커밋의 위치를 가리키고 있고
master branch라고 생각하면 된다. 이 master 브랜치는 이름을 바꿀 수도 있지만 처음으로 프로젝트를 만들었을 때 만들어주는 브랜치이기 도 하다.
그 다음, origin/master 인데 여기서 origin은 쉽게 말해서 '깃허브나 깃랩 사이트에 올라가있는 소스코드'를 뜻한다.
즉, 원격(remote)이라고 흔히 불리고 있고 이 origin이라는 이름도 얼마든지 바꿀 수가 있다.
그래서 저 구문을 풀어서 🤔 생각을 해보면 원격에 master 브랜치가 test라는 이름을 가리키고 있다고 생각하면 편하다.
이 말이 쉬운지는 의문이다. ㅠㅠ
마지막으로 origin/HEAD 인데 origin은 원격을 뜻하는 것이고 HEAD는 바로 현재 작업을 가리키는 위치를 뜻한다.
또 풀어서 생각을 해보면 원격에서 작업 중인 곳을 가리킨다고 보면 된다.
이해가 되었으면 좋겠고 난 이런 식으로 생각해서 이해를 했다.
생각대로 동작을 해주고
이 부분을 보면 현재 git add, commit 만 해주었다. 바로 commit 만 일단 해주었는데 이 뜻은
master(local 작업 컴퓨터)에 변화가 생겨 commit을 해주었기 때문에 master 브랜치만 이동이 된 것이다.
여기서 이제 모두가 작업을 해주는 깃에 올리기 위해 push를 해주어야 한다.
한 번 해보자.
푸쉬를 하니 origin/.. 에 속하는 내용들이 변했다 푸쉬를 하니 이번엔 origin에 대한 브랜치가 올라가게 되었다.
바로 master에서 작업된 내용들이 origin(원격)으로 패치가 된 것이고
원격에서의 작업위치(origin/HEAD)는 '주석 추가'에 위치해있다는 의미이다.
이런 식으로 보면서 하면 편하다.ㅎㅎ
도움이 되었으면 한다.
그럼!!
반응형'IT Tech > Git' 카테고리의 다른 글
.gitignore (0) 2020.08.13 rebase (0) 2020.05.14 add, commit (0) 2020.05.14 merge (0) 2020.05.14 branch, checkout (0) 2020.05.14