반응형
소스트리는 gui환경에서 git사용할 수 있게 해주는 프로그램입니다.
사용방법
설치 : sourcetreeapp.com -> 다운
설정 : remote -> git -> git에서 카피한 url, 로컬 폴더
새 저장소 만들기
add repository -> create new repository -> destination path -> create
파일 커밋 하기
파일 생성 unstaged files > commit > staged file 로 올라감 > 주석입력 > 하나의 버전 완성
Commit Description 검색
View - Search View - 검색
Accounts
해당 저장소 usename (로그인 이메일 아이디 아님)
개념
add : unstaged files -> staged files
clone : 원격저장소와 로컬을 매치 시키는 작업
프로젝트 클론 주소 : https://github.com/minired/candyfalling.git
destination path : 자신이 작업할 디렉토리
discard : 아직 commit 하지 않은 자료를 최종버전의 commit으로 되돌리는 기능
fetch : 원격정보의 정보를 새로고침, 서버와 로컬의 정보를 비교하여 변경된 사항을 수집
HEAD : 최종 확정본, 특수 포인터. 지금 작업하는 로컬브랜치를 가르킴
master : 기본 브랜치. 실제 최종 릴리즈 된 소스코드
merge : 서버와 로컬의 자료를 서로 합치는 작업
branch된 버전을 합치는 것을 merge
충돌 : merge시 발생. merge conflicts
origin : 중앙 저장소 별칭
push : 소스를 올리는 것. 파일을 원격 컴퓨터(github)의 저장소에 적용
push -> master 브랜치 OK -> 계정 입력
pull : 원격저장소에서 로컬로 업데이트 된 소스를 내려받는 것. fetch + merge
Repository : 저장소
reverse
모든 이력은 남겨놓고 소스를 이전 버전으로 되돌리는 기능
원하는 버전까지 순차적으로 하나씩 실행 (reverse commit)
reset
이력 삭제하면서 원하는 버전으로 되돌리기
Reset current branch to this comment
soft
mixed
hard : discard all working copy changes
revert : 새로운 commit을 추가하면서 내가 원하는 곳으로 되돌아가는 기능
staged files : 파일을 commit 대기 상태로 만듬
unstaged files : 새로운 파일이 생성된 상태
uncommitted : commit하기 전
Working directory (작업디렉토리) : 실제 디렉토리, 로컬저장소에서 수정된 파일이 존재하는 공간
branch
나뭇가지, 분기
branch라는 기능을 통해 버전이 다른 방향으로 나아갈 수 있도록 해줌
각각 작업. 서로 영향을 받지 않음
만들어진 브랜치는 다른 브랜치와 병합
master 브랜치
통합 브랜치 : 언제든지 배포할 수 있는 버전을 만들 수 있어야 하는 브랜치
토픽 브랜치 : 기능 추가나 버그 수정과 같은 단위 작업을 위한 브랜치
충돌 해결
1. pull : 먼저 원격 저장소의 최신 이력을 로컬로 가져와 본다
2. ok 버튼 클릭
충돌 메시지 표시 -> 충돌 부분 찾기 -> 적용할 부분 선택 -> 불필요한 마커 삭제 -> 커밋
트러블 슈팅
! [rejected] master -> master (fetch first)
pull 하지 않고 commit, push 할 경우 fetch 먼저 하라는 경고
이 상태에서 pull 할 경우 branch 되어 merge 됨
반응형
'컴퓨터공학 > 개발환경' 카테고리의 다른 글
프레임워크 | .NET (0) | 2020.02.06 |
---|---|
IDE | Visual Studio와 이클립스 (0) | 2020.02.06 |
에디터 | Vi 입력모드와 명령모드 (0) | 2020.02.06 |
IDE | Xamarin Studio (0) | 2020.01.17 |
에디터 | ATOM (0) | 2019.12.16 |
개발환경 | 웹프레임워크의 종류 (0) | 2019.11.21 |
개발환경 | 프로그래밍 언어의 분류 (0) | 2019.11.21 |
개발환경 | 개발 도구의 종류 (1) | 2019.11.21 |
댓글