git config --global user.name "NAME"
git config --global user.email E-MAIL
사용자 이름과 e-mail을 등록
-프로젝트마다 사용자 정보를 다르게 설정 : 저장소 생성 후--global
빼고 입력
git config --list
설정 정보 확인
git init
저장소 설정
git commit -m "메세지"
Staging Area에 있는 파일을 Repository에 반영
-git commit
만 작성 시, nano Editor 실행,Ctrl+X > Y > Enter
로 저장
git commit --amend
저장소 반영 내용 변경 (메세지 오타 수정, 누락된 파일 반영 등)
git status
Staging file 들의 상태 확인
git diff
commit 된 파일 중 변경된 사항 비교
git log
.git repository에 존재하는 history 확인
--oneline
을 추가 시, 각 commit을 한 줄로 출력
git log --amend -m "메세지"
--amend: commit message 수정
git log -p -2
-p, --patch : 각 commit의 수정 결과를 보여주는 diff 역할
-n : 상위 n개의 commit만 출력
git log --stat
--stat :어떤 파일이 commit에서 수정되고 변경되었는지, 파일 내 라인이 추가되거나 삭제되었는지 확인
git log --graph --all
--graph : commit 간 연결된 관계를 아스키 그래프로 출력 (Branch)
git log -S function_name
-S : 코드에서 추가되거나 제거된 내용 중 특정 텍스트(function_name)가 포함되어 있는지 검사
독립적으로 어떤 작업을 진행하기 위한 개념
각각의 Branch는 다른 Branch의 영향을 받지 않음 (= 독립적)
master
)like_fature
)<master>
: 최초로 갖고있는 기본값
git branch <like_feature>
><like_feature>
이라는 이름의 Branch 생성
git branch
> 현재의 Branch 목록 확인
git checkout <like_feature>
><like_feature>
Branch 로 이동
<like_feature>
Branch의 내용이 <master>
Branch 에서 업데이트 된 내용이므로 곧바로 Merge 됨 (= fast-forward)
Merge 된 <master>
Branch가 새로운 체크포인트를 생성
git checkout <master>
git merge <lie_feature>
<master>
Branch 를 중심으로<like_feature>
을 병합
git branch --merge
Merge 된 Branch 확인 가능
git branch -d <like_feature>
<like_feature>
Branch 를 삭제
Merge 한 두 Branch 에서 같은 파일을 변경했을 때 충돌이 발생
git status
로 어느 파일에서 충돌이 발생했는지 확인 가능git add
, git commit
후 다시 Merge
git reset <commit ID>
HEAD의 위치를<commit ID>
로 되돌림
git reset --hard <commit ID>