Sourcetree 정리 + Github
commit : 변경사항을 내 pc에 저장
push : 서버에 밀어넣음
pull : 서버에서 다른사람 작업 받기
공동작업 주의사항
1.작업하고 commit만 해놓기
2.아침에 한명씩 돌아가면서 push 한 후 나머지는 pull
3.돌아가면서 push 하다가 에러가 나면 충돌난 부분
충돌이 어디서 난지 알아야함
--------------
- 같은 컨트롤러 만지지 말기
- 동시에 저장하지 말기 (push)
- 브랜치 따지말기 (merge 할 때 충돌이 많이 일어남 )
무시 : 남들하고 공유하지 않겠다
- pc환경이 다를경우 문제가 생길 수 있음
- 방법 : 오른쪽 마우스 - 무시 - > ignore 폴더 만들어짐
- 생소한 파일은 무시
- 무시한 목록
.classpath 오른쪽 마우스 - 무시 - 이 일치하는 파일명 무시 - 현재저장소
.project
.springbeans
.settings 이하 모든걸 무시
src test는 안쓰니까 무시 (이하 모든걸 무시 src/test)
target
commit
- 커밋은 하고싶은 만큼 하면 됨, 주요 지점마다 커밋을 해야함, 우리는 커밋 자주하기!!
- 커밋 장점 : 내가 뭘 실수했으면 돌이킬 수 있음
- ex) 주요 기능 완성되면 - 커밋, list controller 만들고 커밋, service커밋, mapper 커밋
- commit할 때, 내가 무슨변화를 줬는지 써주기!
폐기
(unstaged 상태에서 없애는 걸로 기억)
맥북은 폐기가 없음 : --- 맥에선 코드뭉치버리기 인가봄
커밋한 내용을 되돌리는법
1. branch 초기화(맘에 안드는 부분을 없앨 수 있음) - 우리는 이걸 쓸 예정
- 그 전으로 돌아가고싶은 곳에 선택 오른쪽 마우스 - master를 이 커밋으로 초기화
- hard - 기존내용 다 날려버림
- mixed -unstaged 상태로 둠
- soft - 내용을 남겨둠 (제대로 못들었어요)
2. reverse초기화
- 그때 있던 행동을 지워버림. 나머지는 그대로 유지 - 그때 했던 행동을 취소하고 현재상태 유지
- 소스를 통으로 복붙에서 다른곳에 붙여놓고 하기 -- 되돌리기 할 때 꼬인다!
- 충돌 : 리버스 커밋하다보면 충돌 상황이 많이 생긴다
- 충돌일어날 때 아래 이미지 2장
과거했던 행동을 삭제하라고했는데 최종본에 남아있음 = 최종본에 남아있는데 과거를 삭제하면 충돌이 되버림
충돌 해결하는 방법
: 둘중에 하나 선택하거나 내가 원했던 걸 만들어주면 됨 (제일 좋은건 충돌상태는 안만드는것)
저 노랑 문구를 지워주고 commit 함 - 최종본
브랜치
브랜치 따는데 원칙이 있음
패키지를 완전히 분리하고 쓰는게 좋음 합쳐질 때 충돌 남
---브랜치 합칠때---
누가 주가 되는지 가 중요
마스터를 주로하고 신규개발을 합침
신규개발- 오른쪽 마우스-marge 신규개발 into master
*주의하기*
합칠 땐 commit 마다 겹치는 거 없는지 꼼꼼하게 확인
또는 패키지 분리하기
깃허브에서 repository 만들기
오른쪽 + 버튼 -> new repository
repository name 에는 프로젝트명이 들어가게됨
-Create repository 하면 주소가뜨는데 소스를 올릴 주소임
(private 나 이외에 아무도 공개 안함
public 전체공개 )
회사 소스 깃허브에 올리면 안됨!! 소스 복붙해서 던지기 안됨
토큰 발급받는 방법
계정 - settings - 왼쪽하단developer settings - Personal access tokens - generate - note 쓰기
no expiration(기간 없음) 선택 - repo 선택
토큰이 있어야 접속이 됨
비밀번호 저장 기능 체크하지말기!! 맥은 구버전 ㅜㅜ
혹시라도 틀린 비밀번호를 넣었다 하더라도 수정할 방법이 없다.
만약 비밀번호를 초기화 할 상황이 생기면 C:\Users\[계정명]\AppData\Local\Atlassian\SourceTree 에서 passwd 파일 삭제
ㄴ 윈도우 방법/ 맥 방법 찾아서 삭제하기
원격
설정 - 원격 주소 복붙(git hub에서 만든 repository 주소)
원격이름 : origin
url : 원격 주소 복붙(git hub에서 만든 repository 주소)