티스토리 뷰

TIL

TIL 220803 git command + git-flow + EOF

2021bong 2022. 8. 3. 21:15

Git Command

 

git init

.git 디렉토리를 만들어 Git repository가 된다. Git으로 버전 관리를 할 수 있다.

git init

 

git clone

복제하고 싶은 repository를 복제한다.

git clone <git repository url>

 

git branch

로컬에 있는 브랜치를 확인하고 만들고 삭제할 수 있다.

// 존재하는 브랜치 확인하기
git branch

// 새로운 브랜치 만들기
git branch <branch name>

// 브랜치 삭제하기
git branch -d <branch name>

 

git checkout

작업하는 브랜치를 옮길 수 있다.

// branch name 브랜치로 이동하기
git checkout <branch name>

// 브랜치를 생성하면서 동시에 이동하기
git checkout -b <branch name>

 

git remote

원격 repository와 로컬 repository를 연결한다.

remote name은 해당 레포 주소를 저장하는 이름이다. git remote -v를 사용하면 저장한 이름과 레포 주소를 확인할 수 있다.

// 연결된 리모트 확인하기
git remote

// 연결된 리모트를 주소까지 확인하기
git remote -v

// 리모트 연결하기
git remote add <remote name> <repo url>

// 리모트 삭제하기
git remote remove <remote name>

 

 

 

git push

로컬에 있는 파일을 원격 repository로 업로드 한다. -u와 --set-upstream는 비슷한 기능을 하는 명령어이다.

// repo name에 branch를 푸시하기
git push <repo name> <branch name>

// -u 명령어 사용해서 앞으로 push할 때 간편하게 하기
git push -u <repo name> <branch name>
...
git push
* 이렇게 한번 푸시하고 나면 앞으로 git push만 입력해도 repo name에 푸시된다.

처음에 git push명령어로만 푸시하는 법을 배워서 매번 git push를 입력했다. 그럴 때마다 자꾸 업스트림을 설정하라고 떠서 뭔지도 모르고 똑같이 따라했는데 원래 푸시를 레포와 브랜치를 적어가며 귀찮게 해야되는게 기본이라는 것을 알게 되었다. 궁금했던 -u와 --set-upstream 명령어도 의미를 알게되어 앞으로 push는 잘 할 수 있을 것 같다.

 

git command 이론을 듣고 써보려고 해도 어려워서 매번 포기했었는데 팀 레포에 내 브랜치를 생성해서 푸시하는 과제가 있어서 git command를 사용할 기회가 생겼다. 역시 해결해야할 문제가 있으니 학습이 빠르다고 느꼈다. 기존 파일을 내 개인 레포에 올리고 있었는데 같은 파일을 팀 레포에 올리다보니 리모트에 대해서도 잘 알게 되었고 리모트를 디렉토리별로 연결할 수 있다는 것도 발견하게 되었다.


Git-Flow

 

vincent driessen의 효과적으로 git 브랜치를 사용하는 전략

  • master : 정식 배포되는 안정적인 버전의 소스코드가 관리되는 브랜치
  • develop : 개발 브랜치. 개발자들이 이 브랜치를 기준으로 각자 작업한 기능들을 병합한다.
  • feature : 새로운 기능 개발과 같은 단위 기능을 개발하는 브랜치. 여기서 작업된 내용은 최종적으로 PR을 거쳐 develop브랜치에 병합된다.
  • release : 배포를 위해 master 브랜치로 보내기 전에 QA 테스트가 이뤄지는 브랜치
  • hotfix : 배포했는데 버그가 생기는 것과 같은 긴급한 수정을 위한 브랜치

EOF

EOF(End Of File) 파일 끝. 데이터 소스로부터 더 이상 읽을 수 있는 데이터가 없음을 나타낸다.

C언어에서는 EOF에 도달하면 -1을 반환한다고 한다.

 

백준 10951번 문제를 풀다가 새롭게 알게 된 개념이다. 문자열을 입력받아 eof를 판단할 수 있는지에 대한 문제인데 처음에는 왜 필요한지 이해를 못했다. 전 문제보다 더 쉬워보여서 껌이네 했는데 아니었다... 어쩐지 갑자기 입력받는 문자열의 갯수가 없더라니... 주로 입력값을 얼마나 받을지 명시하지 않을 경우에 사용한다고 한다.

 

728x90
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함