GIT(47)
-
[GIT] 서버 저장소
서버 저장소는 다른 말로 원격 저장소라 한다. 서버 저장소는 로컬 저장소의 코드를 복제한 복사본이라 할 수 있다. 서버를 이용하면 코드를 안전하게 보관할 수 있고 서버에 있는 소스 코드를 다른 사람과 공유하고 협업하여 개발 할 수 있다. 협업 저장소 요즘 컴퓨터는 항상 인터넷에 접속되어 있지만 24시간 인터넷에 연결하여 작업할 수 없는 개발 환경도 있다. 깃은 두 가지 환경을 고려하여 분산형 모델을 선택했다. 연속된 작업 원격 저장소가 있어 언제 어디서나 개발을 이어 할 수 있다. 외부에서 개발 중인 코드를 서버에 저장하고 나중에 서버에 올린 코드를 로컬 컴퓨터에 동기화 할 수 있다. 작업을 연속적으로 진행할 수 있다. 깃은 분산된 저장소들을 하나로 통합하여 최신 코드를 배포할 수 있다. 서버 저장소는 ..
2022.07.31 -
[GIT] diff 명령어
diff 명령어는 커밋 간 차이를 확인한다. 보통 리눅스나 macOS 같은 유닉스 계열의 운영 체제는 diff 명령어가 있다. 깃 또한 초기 시작은 리눅스 커널을 개발하려는 것이어서 유사한 기능을 하는 diff 명령어가 있다. 파일 간 차이 깃의 장점은 파일들의 수정 이력을 커밋이라는 형태로 구분할 수 있다는 것이다. 파일 수정이란 파일 내용 일부가 수정, 추가, 삭제되는 것을 의미한다. diff 기능으로 파일의 수정 및 변경 내역을 쉽게 파악할 수 있다. 워킹 디렉토리 vs 스테이지 영역 add 명령어로 파일을 등록하지 않은 경우, 워킹 디렉토리와 스테이지 영역 간 변경 사항을 비교 할 수 있다. index.html 파일의 코드 일부를 추가하였다. $ git diff 워킹 디렉토리 내용과 스테이지 내용..
2022.07.27 -
[GIT] 커밋 로그
깃은 터미널 기반 응용 프로그램으로 깃 로그는 저장소 커밋 기록들을 확인할 수 있다. 또 커밋 메시지, 커밋 아이디, 브랜치 경로 등을 분석할 수 있는 옵션들도 제공한다. 간략 로그 커밋 메시지를 여러 줄 작성했을 때 로그 옵션 중 --pretty-short를 사용하면 로그를 출력할 때 첫 번째 줄의 커밋 메시지만 출력한다. $ git log --pretty=short 특정 커밋의 상세 정보도 확인할 수 있다. 특정 커밋의 상세 정보를 확인하고 싶다면 show 명령어를 사용한다. $ git show 커밋아이디 커밋 아이디 앞자리 일부만 입력해도 조회가 가능하다. 특정 파일 로그 전체 커밋과 달리 특정 파일의 로그 기록만 볼 수 있다. $ git log 파일명 해당 파일의 커밋 로그 기록들을 볼 수 있다...
2022.07.27 -
[GIT] 커밋 아이디
git log 명령어를 실행했을 때 commit 옆에 이상한 영문, 숫자가 나열되어 있는 것을 볼 수 있다. 이는 커밋 아이디로 특정 커밋을 가리키는 참조 값이다. 특정 커밋을 구분할 수 있고 브랜치나 태그 등에 많이 사용한다. SHA1 커밋 아이디가 복잡한 이유는 깃이 SHA1 이라는 해시 알고리즘을 사용하기 때문이다. SHA1 해시키 값은 40자리의 복잡한 hexa 값으로 되어 있다. 깃은 스테이지 영역의 변경된 내용을 기반으로 SHA1 해시키를 생성한다. 단축키 SHA1 해시키는 실수로 잘못 입력할 가능성이 높다. SHA1 해시키는 고유 접두사로 간략하게 사용할 수 있는데 해시의 앞쪽 7자리만으로도 중복을 방지하면서 전체 키 값을 사용할 수 있다.
2022.07.27 -
[GIT] 메시지가 없는 빈 커밋
커밋할 때 반드시 커밋 메시지를 작성해야한다. 의미 없는 커밋이라 커밋 메시지를 생략하고 싶을 때가 있다. 이런 경우 메시지가 없는 커밋 작성도 허용한다. 빈 커밋하기 index.html 파일을 수정하였다. 빈 커밋하려면 --allow-empty-message 옵션을 사용한다. $ git commit --allow-empty-message -m "" 옵션간에 순서가 정해져 있는 것 같다. 소스트리에서 빈 커밋 소스트리에서 메시지 없이 커밋하는 것은 쉽다. 커밋 메시지 입력 없이 커밋 버튼 누르면 된다. 빈 커밋 git log로 확인해보면 터미널에서는 아무 내용도 없이 커밋된 것을 볼 수 있고 소스트리에서는 no message라고 표시되는 것을 볼 수 있다. ※ 커밋 메시지 수정 커밋 메시지 오타 있을 때..
2022.07.27 -
[GIT] 두 번째 커밋
이전에 커밋한 index.html 파일을 수정을 하였다. 파일 변경 사항 확인 깃 배시 터미널에서 status 명령어를 실행을 해보면 index.html 파일이 modified 상태로 된 것을 확인 할 수 있다. 소스트리에서는 파일 상태 탭을 선택하면 스테이지에 올라가지 않은 파일 목록에 index.html 파일이 생긴 것을 볼 수 있다. 수정된 파일 복구하기 수정한 파일을 수정 전 상태로 복구할 수 있다. 이전 커밋으로 되돌리는 명령어를 사용하면 된다. $ git checkout -- 수정파일명 수정 파일을 되돌리면 이전 커밋 이후 작업한 수정 내역은 모두 삭제한다. index.html 파일이 수정 전 상태인 것을 확인할 수 있었다. 스테이지에 등록 변경된 소스 코드를 커밋하는 것은 처음 파일 생성하고..
2022.07.27