Today I Learned
(24.04.15)[1주차] GIT 기초 특강, 팀프로젝트 드랍
드디어 내일배움캠프가 본격적으로 시작이 되어서 새로운 세션과
미니 프로젝트가 드랍되어서 관련 내용을 정리하는데도 시간이 꽤 걸렸다
시간 분배가 캠프를 진행하면서 잘 해야할 듯
아침에 30분 정도 더 일찍 일어나서 준비를 해서 곧바로 9시에 시작을 할 수 있도록 해야겠다.
사전캠프 때도 9시에 시작을 했지만, 왜인지 오히려 더 피곤한 느낌은
스트레스일지도..
GIT 기초 특강 01
- 기본적인 git을 github과 연결해서 push하는 정도의 기본정도의 명령어 관련과 관련 내용 세션이었고, 나름 들으면서 학습하면서, 팀프로젝트 시, repository 사용에 익숙할 수 있도록 점심시간 틈을 내서 연습해서 익히려고 했다.
- Branch에 대한 개념을 알고 있지만, 사용법은 몰라서 기초 특강을 통해 배우고 싶었으나 아쉽게 관련 내용은 후반에
- 내일 추가로 Branch 관련해서는 유튜브 강의를 참고해서 나머지 예습+복습을 진행할 수 있도록
강의 내용 간단 정리
더보기
Git
- 코드 변경점 기록하는 형상 관리도구, 버전 관리 도구
- 소프트웨어 변경사항 체계적 추적/통제하는 도구
- 과거로 돌아갈 수 있는 기능
Github
- 백업+공유 가능의 협업 도구로 활용할 수 있는 온라인 코드 저장소
- git으로 백업을 해서 팀원에게 공유 및 협업 가능
Github 명령어
git init
- 초기화,프로젝트 시작 전 한번만 입력하고, 버전관리를 할 수 있는 명령어
- 단, 여러번 입력을 시켜도 아무효과 X
- 정확한 폴더/경로 에선 입력
- 그 경로 위치에선 프로젝트를 진행할려고 하는 폴더에선 진행
- 동시에 숨김폴더로 .git 이 해당 폴더에 생성
- 계속적으로 추적을 하는 폴더
git add & git commit
git add 파일명+확장자
git add .
- 저장할 파일을 지정 : Workind directory
- . 을 쓸 경우 모두 지정
get commit -m “메시지”
- 실제로 저장 : Staging area, Repositroy
- commit d15b049aa51c50e5b0c4fdf26d9b8f26f05d6bd3 처럼 각 아이디와 함께 저장
git status
- 현재 git 저장 상태를 보여줌
git log
- 저장 내역 = commit 내역을 확인하는 명령어
- 아이디, 코멘트와 함께 보여줌
git push
git push origin (브랜치이름)
- 추가로 수정된 코드를 github에 반영을 하는 명령어
- 수정→add→commit 후에 push 를 해야
- git push -u origin main 한번 하면 다음부터 git push 만 해도 동일하게 작동
충돌 해결
협업세팅
- 여기까지 github 의 repository생성을 해서 push까지 한 상태이므로 협업설정을 필요
- collaborator 등록
- leader가 추가
- collaborator들은 github에 있는 코드를 전체를 가져올 수 있는 상태가 됨
git clone
get clone "(공유된 githhub 주소)" .
- collaborator들은 똑같이 주소를 통해서 전체를 복사해 오는 명령어
- 단, . 입력을 하지 않을 경우, 똑같이 되는 것이 아닌 새로 폴더가 생성이 되어서 새로 만들어짐
git pull
git pull origin (브랜치이름)
- git push 를 통해서 어떤 collaborator 가 다 덮어버릴 경우 rejected 시켜버리기 때문에 git pull 을 통해 당겨온다음에 push 를 해줘야함
- rejected 에러 뜨면 누군간 그 사이에 올렸다곤 판단, pull 후 push 할 수 있어야
- 단, github에서 hint를 주면선 합치는 명령어를 알려주고 pull을 하라고 알려줄경우 맨 처음 hit를 실행 후 pull & push
conflict 충돌 해결
- git pull 시 같은 위치에 공교롭게 다른 collaborator가 다른 코드로 바꿨을 경우, 내가 쓴 코드와 충돌이 된 것
- git이 =과 >를 추가했기 때문에 전부 삭제하고 aaaa ddddddd 만 남길수도 있고 최종 수정할 결과를 남기면 되지만, 반드시 collaborator과 협의가 필수
- 단, 코드 수정한 것이기 때문에 add commit 후 git push 진행
팀이 만들어지고 얘기를 하는데 스트레스를 너무 받은건지 점심을 못먹어서 그런건지 머리가 갑자기 핑 돌아가지고 큰일날 뻔했다.
건강관리를 할 수 있도록.
'Today I Learned' 카테고리의 다른 글
(24.04.17)[1주차] 프로젝트 Markup, Dreamweaver (0) | 2024.04.17 |
---|---|
(24.04.16)[1주차] Git & GitHub Branch 정리 (1) | 2024.04.16 |
(24.04.12) Java의 정석 학습(Stream, Collector) (1) | 2024.04.12 |
(24.04.11) Java의 정석 학습(스트림(중간연산,최종연산 / Optional / Collector) ) (0) | 2024.04.11 |
(24.04.10) Java의 정석 학습(스트림(스트림 생성, 중간연산) ) (1) | 2024.04.10 |