
git을 활용한 작업 flow 1. main 브랜치 생성 및 main 브랜치에서 초기세팅 완료 2. main브랜치 github에 push 3. 작업하려는 로컬에서 해당 github의 main을 clone 4. 작업내용에 알맞는 git branch 생성 및 해당브랜치로 이동해서 작업 진행(생성 후 이동하는 것 까먹지 말것!!!) 5. 해당 브랜치에서 작업완료 후, main브랜치로 이동하여 github의 main을 pull git pull origin main 다른 누군가 작업을 먼저 완료하고 github의 main브랜치에 merge를 완료하여 , 현재 내가 가진 main보다 최신버전이 있을 수 있기 때문 main을 pull 한 후에, 꼭 git status를 찍어서 commit이 필요할 경우 commit실..


얄코님의 git강의 중, 깃의 submodule에 관함 sub modules 프로젝트를 진행하다 보면, 프로젝트 내부에 서브 프로젝트를 진행하게 됨 이때, 단순히 깃으로 관리하면 서브 프로젝트 내부에 있는 모든 파일들도 관리를 하게됨 만약 메인 프로젝트와 서브 프로젝트의 파일들을 깃으로 관리는 하되, 메인에서 직접적으로 관여는 하지 않는 약간 별개의 파트처럼 구분해서 다룰 때 sub module을 사용 1)적용 방법 두 프로젝트(main , sub)를 생성 > 양쪽 모두 파일 만들고 커밋 > 두 프로젝트를 각각의 github-repo에 올림 main project의 디렉토리에서 다음을 입력 git submodule add (submodule의 GitHub 레포지토리 주소) (하위폴더명, 없을 시 생략) ..

Git tag 특정 시점에 키워드를 저장하고 싶을 때 보통은 version을 표시하기 위해 많이 사용함 많이 쓰이는 방식으로는 semantic versioning이 이 있음(https://semver.org/lang/ko/) 1)종류 lightweight : 커밋에 그냥 태그만 붙임. 태그외의 정보는 X annotated : 태그외에 이것저것 많이 함꼐 제공(작성 정보, 날짜, 메시지,gpg서명...) 2)태그달기 따로 명시해주지 않으면 , 가장 마지막 파일에 lightweight 태그가 달림 #마지막 커밋에 , 'v2.0.0'이라는 lightweight태그가 달림 git tag v2.0.0 #현존 태그 확인 git tag #원하는 태그의 내용 확인 >해당 태그의 커밋에서 어떤 변화가 있었는지 / 해쉬태..


얄코님의 git강의내용을 정리 Git Head에 관함 1.HEAD란? 특정 브랜치로 이동시 그 브랜치의 가장 최신 커밋으로 이동하며, 그때의 사용자의 위치를 HEAD라고 한다. 이게 sourcetree같은데서 보면, branch들이 일렬로 나열되어 있는 경우가 있는데, 각 branch의 최신 커밋이 head가 되는 것임 다음과 같은 경우, main브랜치로 이동했을 때 내 위치는 'main 3rd commit'이고, 그떄의 head도 'main 3rd commit'임 만약 delta-branch로 이동시, 'delta 3rd commit'이 내 위치이고, 그때의 head도 'delta 3rd commit'임 암튼 HEAD 라는 건, 일종의 현위치를 나타내는 것이고 브랜치를 이동했을 경우 HEAD는 그 브랜..


얄코님의 git강좌에서 배운 내용을 정리 github에 관함. 세부내용은 다음과 같음 github이란? personal access token만들기 github 사용 : push / pull 에러케이스 1),2) (로컬)에서 원격의 브랜치 다루기 기타 Github의 유용한 기능들 1.GitHub이란? git의 원격 저장소 협업과정에서, 누군가(A)가 작업을 완료해서 github에 올리면 그 즉시 github은 최신화가 된다(당연) 그 후, B가 완료한 작업을 올리기 위해서는 반드시 github상의 최신 커밋을 먼저 받아서 자기 컴퓨터에 있는 프로젝트에 적용부터 하도록 강제가 됨 커밋상의 충돌사항이 있다면 그것도 자기컴퓨터에서 먼저 해결하고(병합등을 통해) 나서야 자신이 작업한 커밋을 github에 올릴 ..


Branch git을 활용해서 차원을 다룰 수 있음 branch는 일종의 가지를 뜻함 1.branch 기초 생성/목록확인 / 이동 / 삭제 / 생성과 동시에 이동하기 / branch 이름 바꾸기 #add-coach라는 브랜치 생성 git branch add-coach #브랜치 목록 확인 git branch #add-coach브랜치로 이동 git switch add-coach #브랜치 생성과 동시에 이동하기 git switch -c new-teams #브랜치 삭제하기 git branch -d (삭제할 브랜치명) #브랜치 이름 바꾸기 git branch -m (기존 브랜치명) (새 브랜치명) 삭제할때는, 삭제하려는 브랜치에 위치해서는 안됨(다른 브랜치에 위치한 상태에서, 브랜치 삭제 명령을 해야 함) 다른 ..


얄코님의 git강의 중 commit에 관한 부분 단순하게 'add > commit > push'을 넘어서 조금 더 세세한 부분들에 대하여 다룸 세부내용은 다음과 같음 (협업을 위해)커밋시 권장사항 hunk를 활용한 세심한 스테이징 stash 활용 : 커밋하기 애매한 변화 치워두기 마지막 커밋 수정 : amend 이전 커밋 수정 : rebase -i 1. (협업을 위해)커밋시 권장사항 하나의 커밋에는 한단위의 작업을 넣는다! 한 작업의 여러버전을 커밋하지 않는다! 여러 작업을 한 버전에 커밋하지 않는다! 커밋 메시지는 어떤 작업이 이뤄졌는지 알 수 있도록 한다 널리 사용되는 커밋 메시지 방식(컨벤션 방식)을 사용하는 것을 추천 컨벤션 방식은 Type(커밋의 타입) / Subject(커밋의 작업 내용) / ..


인프런에서 얄코선생님의 git강의를 보면서내용을 정리 1. 과거로 돌아가는 두가지 방법 : Reset / Revert 1) reset 말 그대로 시간을 딱 어느 시점으로 되돌림 예를 들어, 커밋1 > 커밋2 > 커밋3 이후 작업을 진행하다가 커밋1로 돌아간다면, 커밋1 이후의 모든 작업은 취소됨 커밋 1이후의 작업내역들은 옵션(hard, mixed, soft)에 따라 다양하게 처리할 수 있음 2) revert 특정 시점(커밋)에 있었던 일들을 완전히 반대로 진행함. 그러나 특정 시점으로 되돌아가는 reset과 다르게, revert가진행된 새로운 커밋을 만드는 것임 예를 들어, 커밋1에서 A파일에 -1이라는 값을 추가하고 커밋2에서 B파일에 1을 추가했다고 하자. 이상황에서 커밋1을 revert한다는 것은..


인프런에서 얄코선생님의 git강의를 보면서내용을 정리 1. Git의 세가지 공간 git의 작업 공간은 working directory , staging area, repository로 총 세가지가 있음 add나 commit 혹은 resotre를 사용하여 작업 내용의 위치를 세공간 어디든 자유롭게 이동시킬 수 있음 working directory 작업공간. 마지막 커밋 이후로, 변경점이 존재하는 파일들을 다루는 공간(커밋 이후로 변경점이 존재하지 않는 파일들은 애초에 다룰 필요가 없음. 그대로 그냥 다음 커밋에 링크로 전해주면 되니까) tracked파일과 untracked파일이 존재함 tracked파일 : 커밋된적이 있어, 깃의 관리하에 있는 파일. untracked파일 : gitignore에 적혀있어 관..


인프런에서 얄코선생님의 git강의를 보면서내용을 정리 하나의 주제로 포스팅할 만큼 길지 않은 단편적인 내용들을 함께 정리 세부내용 gitignore git help git config(환경설정) git clean : 관리(추)적되지 않는 파일 삭제 git hooks git을 이전 세대 vcs들과 차별짓는 두가지 요소 1.gitignore 깃에서 따로 관리하지 않는 내용들을 적어둠. 여기에 적어둔 파일이나 폴더는 깃이 추적하지 않음 공식사이트 : https://git-scm.com/docs/gitignore 밑은 gitignore 파일의 양식 # 이렇게 #를 사용해서 주석 # 모든 file.c file.c #최상위 폴더에 위치한 file.c #file.c가 파일이라면 바로위와 동일한 결과가 나옴 /file..