본문 바로가기
반응형

Git8

깃(git) 복귀 - reset , revert 리셋 (reset) 리셋 (reset)은 커밋을 기준으로 이전 코드로 되돌리는 방법으로, 기록한 커밋을 취소합니다. 커밋을 취소하는 만큼 신중하게 작업해야합니다. git log --oneline : 커밋내역을 간단하게 확인 git reset --옵션 커밋ID 리셋에는 세가지 옵션이 있는데요, soft , mixed , hard가 있습니다. hard로 갈수록 위험합니다. soft : HEAD 포인터만 움직이고, 워킹과 스테이지 영역은 그대로 입니다. mixed : 기본옵션. 워킹은 그대로, unstaged된 상태로 이전 커밋으로 옵니다. hard : 실제 파일이 삭제된 이전 상태로 복원합니다. 리버트 (revert) 리셋은 기존 커밋 정보를 삭제하지만, 리버트를 기존 커밋을 남겨두고 취소에 대한 새로운 커.. 2022. 4. 21.
깃(git) 병합 - merge (Fast-Forward / 3-way) 병합 브랜치를 생성하는 목적은 원본 코드에 영향을 주지 않고 분리해서 개발하기 위한 것입니다. 독립된 브랜치에서 개발 작업이 끝나면 다시 원본 브랜치에 작업한 결과를 반영해야합니다. 두 코드를 하나씩 직접 비교해가며 수동 병합을 할 수도 있고, 깃의 도구를 이용해서 병합할 수 있습니다. 요약 git checkout 병합하는_브랜치 : 기준이 되는 브랜치로 먼저 이동 git merge 병합당하는_브랜치 : 자동 병합 git branch --merged: 브랜치 목록, 병합한 브랜치는 (*)로 표시 git branch --no-merged :병합하지 않은 브랜치 조회 하나씩 직접 비교하는 수동 병합 수동으로 병합하려면 양쪽 파일을 일일이 비교하여 바뀐 점을 찾아서 적용해야합니다. 소스코드가 여러개면 A를 복.. 2022. 4. 20.
깃(git) 브랜치 (branch)와 업스트림 (upstream)(-u , --set-upstream) 명령어 요약 git branch 브랜치이름 현재 커밋을 분기점으로 브랜치를 생성합니다. git branch 브랜치이름 커밋ID 지정된 커밋에 개발분기점으로 잡아 브랜치를 하나 생성합니다. '깃 커밋 포스트에 있듯이, git log 를 입력해서 나오는 id에서 7자리까지가 id입니다.' git rev-parse 브랜치이름 그 브랜치가 어떤 커밋에 있는지(긴 id로 출력)를 알수있습니다 git branch -v 가지고 있는 모든 브랜치와 그 브랜치의 커밋ID를 볼 수 있습니다. git branch -r 원격 서버의 모든 브랜치를 볼 수 있습니다. git checkout 브랜치이름 그 브랜치로 이동(현재브랜치에서 커밋을 해야 이동할 수 있습니다! git status로 확인) git checkout - (이동취.. 2022. 4. 18.
깃(git) pull과 fetch의 차이 (깃 풀과 페치의 차이) git pull(풀)과 fetch(페치)의 차이는 서버와 로컬의 병합을 자동처리하는지의 여부입니다. pull는 원격 서버에서 최신 커밋들을 내려받아서 현재 로컬 브랜치와 자동으로 병합합니다. 혼자 개발하는 프로젝트에서는 pull만 써도 상관 없겠지만 여러개발자와 협업할때는 pull의 자동병합은 문제가 될때가 많습니다. 풀로 자동병합을 하지 못할땐 페치 방식을 사용해야합니다. fetch는 원격저장소에서 커밋된 코드를 임시 브랜치로 다 내려받습니다. 그러나 내려받은후 현재 브랜치와 자동 병합하지 않고, 그렇기 때문에 워킹디렉터리도 변화가 없습니다. 그래서 merge 명령어를 이용해서 수동 병합해야합니다. 두 명령어 git pull 별칭 브랜치이름 : 원격저장소에 있는 내용을 한번에 내려받는다. 최신 커밋과 .. 2022. 4. 17.
github 이용하기 - remote , push , pull (깃(git) 원격저장소) 주요 명령어 요약! git remote add 원격저장소별칭 원격저장소URL : 원격저장소 연결. 초기에만 설정해주면 됩니다. ex) git remote add origin https://github.com/계정이름/레포지토리이름 : origin은 대표적 별칭입니다. https://github.com/계정이름/레포지토리이름 : 깃허브 레포지토리에 들어가고, 주소 복붙!! git remote -v : 원격저장소 목록 확인 (연결 잘 됐는지 확인하기) git push 원격저장소별칭 브랜치이름 : github에 로컬 깃 저장소에 커밋단위의 내용을 업로드한다. ex) git push origin master : master는 기본 브랜치입니다. git clone 원격저장소URL : 원격 서버에 있는 내용을 내 .. 2022. 4. 15.
깃(git) 커밋 - add, commit 중요 명령어 요약! ('git 기초' 포스트를 보고 기초 개념을 알아야 이해할 수 있습니다!) git add 파일이름 : 특정 파일을 스테이지에 올리는 명령어 git add . : 현재 폴더에 모든 파일을 track 시켜주고 stage 시켜주기 위한 명령어 입니다. 수정된 파일이 있으면 무조건 add 시켜주고 커밋해야합니다! git status로 수정된 파일이 있는지 수시로 확인 "" 필수!! git commit -m "커밋이름" : stage에 올라간 파일을 커밋 git commit -am "커밋이름" : 수정돼서 unstaged 된 파일을 다시 stage 시켜주면서 동시에 커밋하는 명령어 주의 할것은 git commit -am 을 한다고 해서 새로 생성된 파일을 add 시켜주진 않습니다. 이미 tra.. 2022. 4. 14.
깃(git) 기초 : 명령어, 깃 동작 , 저장소 개념 - git 다루려면 필수! 기본 리눅스 명령어 - 맥은 터미널 , 윈도우는 git Bash나 cmd , powershell pwd : 현재 경로 출력 ls : 현재 폴더의 목록 출력 mkdir gitsyudy02 : gitsyudy02 폴더 만들기 (앞으로 디렉터리라고 부르겠습니다!) cd gitsyudy02 : gitsyudy02 폴더로 이동 그 저장소에서 깃 명령어를 사용하면 됩니다! git init : gitsyudy02 폴더에서 이 명령어를 수행하면 그 폴더가 깃 로컬저장소가 됩니다. (.git 파일이 생성됨 - 숨김속성) 깃의 동작 원리 초기화 : 폴더를 깃 저장소로 변경 (git init) 커밋 : 변경된 코드의 이력을 기록 (이전 코드와 현재코드 둘다 저장하면 용량이 너무 크겠죠? 차이만 기록) 브랜치 : 분리 격리된.. 2022. 4. 13.