git
Git 원격 저장소
원격 저장소 받아오기 원격 저장소 : 인터넷이나 네트워크 어딘가에 있는 저장소 Git 원격 저장소 받아오기 원격 저장소의 git 레포지토리를 복사 git clone [원격 저장소 url] 원격 저장소 추가 원격 저장소는 아래의 명령어로 연결할 수 있다. git remote add origin [원격 저장소 url] +) origin은 원격 저장소의 이름이다. 자유롭게 지정할 수 있으나 보통 origin을 많이 사용한다. 연결된 원격 저장소 확인 git remote 원격 저장소 이름 변경 git remote rename origin [변경할 이름] 원격 저장소 삭제 git remote rm [원격 저장소 이름] 원격 저장소 동기화 저장소 갱신 원격 저장소에서 데이터를 가져오기 + 로컬 데이터와 병합 git..

Git 가지 치기
Git Branch Git Branch? 독립적으로 어떤 작업을 진행하기 위한 개념 각각의 Branch는 다른 Branch의 영향을 받지 않음 Git Branch의 종류 메인 Branch : 배포할 수 있는 수준의 안정적인 Branch 토픽 Branch : 기능 추가나 버그 수정과 같은 단위 작업을 위한 Branch Git Branch 생성 현재 Branch 확인 git branch Branch 생성 git branch [브랜치명] Branch 전환 git checkout [브랜치명] Git Navigation checkout은 git log로 확인한 snapshot을 넘나들때도 사용이 가능하다. hash 값을 이용하여 과거의 파일 내용을 확인할 수 있다. git checkout [snapshot has..

Git 시작하기
Git 파일 생성 새로운 파일 생성 git init으로 저장소 생성을 완료 후, 새로운 파일(example.js) 작업을 완료했다. 이 파일을 저장소에 어떻게 반영할까? 파일 영역의 라이프 사이클 파일의 상태 라이프 사이클 Untrackted : 아직 staging area에 등록되지 않은 상태 Unmodified : 파일이 수정되지 않은 상태 Modified : 파일이 수정된 상태 (커밋된 파일 중 수정된 파일이 있을 경우) Staged : 파일이 staging area에 등록된 상태 새로운 파일 생성 먼저, example.js 파일을 준비 영역(staging area)로 보내야 한다. git add example.js 추가할 파일이 있다면 계속해서 더 추가할 수 있다. git add [추가할 파일] ..

Git이란?
git을 사용하는 이유 1. 효율적인 협업 : 여러 개발자가 한 프로젝트에 대해 독립적으로 개발 가능 2. 쉬운 버전관리 : 따로 버전 파일을 일일이 만들 필요 없이 한 파일에 대해서 여러번 커밋함으로써 쉽게 버전 관리 가능 Git의 특징 1. 가지 치기와 병합 master(본 서비스), develop(개발 단계), topic(세부 기능)처럼 독립된 branch들로 프로젝트를 관리할 수 있다. 2. 가볍고 빠르다 git은 SUBVERSION과 같이 중앙 서버로 전체를 관리 하지 않고, 로컬에서 관리할 수 있기 때문에 더 가볍고 빠르다. 3. 분산 작업 한 프로젝트에 대해 여러 개발자가 독립적으로 개발하고 병합할 수 있다. 4. 데이터 보장 개발 중간중간 커밋을 함으로써 개발 진행 과정을 저장할 수 있다...
git bash 사용 시 복사, 붙여넣기
git bash 환경에서 일반적인 ctrl + c, v를 하면 복사 붙여넣기가 되지 않는다. 다음과 같은 단축키를 대신 사용한다. 복사 : ctrl + insert 붙여넣기 : shift + insert

git add error (warning: LF will be replaced by CRLF)
터미널에 git add 명령어를 입력할 때 다음과 같은 에러가 뜨는 경우가 있다. 이는 리눅스를 쓰는 개발자와 윈도우를 쓰는 개발자가 협업할 때 생기는 Whitesppace 에러다. 리눅스 시스템에서는 한줄의 끝이 LF로 이루어지는 반면, 윈도우에서는 CRLF로 이루어지기 때문이다. 윈도우를 사용하고 있다면 git config --global core.autocrlf true 리눅스를 사용하고 있다면 git config --global core.autocrlf true input 혹은 그냥 에러 메시지를 끄고 작업하고 싶은 경우는 git config --global core.safecrlf false 이렇게 해결할 수 있다.

git push, pull error (error: failed to push some refs to) (fatal: refusing to merge unrelated histories)
원격 저장소에(github..) push를 하면 다음과 같은 오류가 발생할 때가 있다. rejected : push가 거부되었다. master -> master : 로컬 저장소의 master 브랜치의 변경 사항을 원격 저장소의 master 브랜치에 반영하려 했는데 non-fast-forward : 원격 저장소의 master 브랜치가 로컬 저장소의 버전보다 이전 버전이 아니다. 라는 의미이다. 쉽게 말하면 로컬 저장소의 commit 목록과 원격 저장소의 commit 목록이 다르면 둘을 연결할 수 없다. 이 때, git pull 명령어로 원격 저장소의 마지막 commit을 로컬 저장소의 commit 로그에 받아오면 된다. 하지만 pull 명령어를 실행하면 아래와 같은 오류가 발생할 때가 있다. 에러 내용은 ..

git 명령어 정리
github 등록 - 파일 수정할 때마다 다음 과정 반복(git checkout -- [file] : 수정사항 원상복귀) -> git add [file] or git add . (모든 파일) git reset [file] -> git commit -m "[message]" -> git push 커밋 내역 수정 - git pull : remote repository -> local repository(git fetch + git merge) - git log : git 기록 - git reset --hard [hash값] : hash값에 대한 commit 이후의 commit들 local repository에서 제거 -> git push -f 로 강제 push해주면 remote repository에도 반영 ..