~
git 설치후, CMD 에서 git 사용가능
~ 버전확인
git --version : 깃버전확인
~ 환경설정
git config --global user.name [깃허브이메일아이디]
git config --global user.email [깃허브이메일주소]
~ 폴더생성
~ github 프로젝트 저장소 복사
git clone https://github.com/[깃아이디]/[프로젝트명.git]
~ 사용명령
git status : 현재 스테이징에어리어의 상태 보기
git add . : 현재 위치한 곳의 모든 파일 추가
git checkout -- [파일명] : 수정한파일이원래상태로 되돌릴수있다.
git commit -m 'msg' : commit 및 commit 메시지 입력
git commit --amend : commit 메시지 수정가능
git reset --hard [commit hash값] : 특정 commit 위치로 변경(특정 위치 이후 commit은 모두 삭제), 로컬만해당
=> 원격지도 동기화하려면 : git push -f (-f옵션은 강제)
=> git --soft 도있음..
git log : 커밋이력을 확인
~ 브랜치
git branch : 현재 브랜치 개수확인
~~ 브랜치 만들고 브랜치이동
git branch develop : develop 브랜치 만들기
git checkout develop : develop 브랜치로 접속
~~ 만든브랜치에서 작업한 것을 master에 합치는방법
git checkout master : master 로 이동
git merge develop : develop 에있는 것을 master에 합치기
git push : 원격지에 반영
git log : master와 develop에 둘다 반영된것을 확인
git branch -d develop : develop 브랜치 제거
~~ 충돌처리 (동일한파일 수정시)
일반적으로병합은 마스트 브랜치에서 수행
git checkout master : 마스터로 이동
git merge develop : master에 develop브랜치를 합치기
=> merge conflict 발생
=> 소스파일에 develop 브랜치에서 수정한것과 master 브랜치에서 수정한 코드가
모두들어가있음. 선택해서 삭제후 merge하면됨
~ git에서 원격지 저장소 관리
git remote : 원격저장소로 어떤것이 등록되있는지 확인
git remote show origin : 원격저장소 상세정보확인
git remote add test [git주소] : 원격저장소 추가
git remote -v : 전체목록확인
git remote rename [현재 git저장소 이름] [변경할 git저장소 이름] : 저장소이름변경
~~ 원격저장소에 대해 명령 사용가능
git log origin/master : origin 의 로그보기
git merge origin/master : origin의 merge 수행
git remote rm [저장소명] : 특정 저장소명을 삭제
~ git에서 로그보기
git log : 최신순서대로 커밋내역을 볼수있음, 엔터로 내려가면서보고, 큐로 나가기
git log --stat : 커밋라인마다 얼마나추가됬는지 확인가능
git log -p -3 : 위에서 3개까지 체적인항목
git log --pretty=online : 각각의 커밋라인이 한줄마다 출력
git log --pretty=format:"%h -> %an, %ar : %s" --graph : 그래프형태로
~ git 프로젝트 소개글 : README.md
Create README.md
markdown 문법
# 큰글머리 ( #~##### : 점점 작아지는 글머리)
``` c
```
: c언어로 표현
[블로그주소](http://naver.com) : 링크
* 가
* 가
* 가
: 순서없는 목록
> '공부하자' - ㅅㄷㄴㅅ -
: 인용문
이름|ㅇㅇ|ㄹㄹ|ㄹㅇ|
---|---|---|---|
ㅁㄴㅇㄹ|1|2|2
: 테이블
**구문**
:강조
~~취소선~~
:취소선
~ git 내에 소스파일을 압축해서 내보내기
git archive --format=zip master -o Master.zip
: 압축포맷 zip, branch명 master, -o 는 output, Master.zip 은 압축파일명
Master.zip은 ../Master.zip 상대경로명으로 표기가능
~ 특정commit을 수정 : commit 제거하거나 commit message를 수정
git rebase -i HEAD~3 : 최근 커밋 3개 를 수정
git rebase -i [hash값] : 특정 커밋 해시값으로도 수정가능
~ git 환경설정
git config --list : git 의 환경설정상태
~~최초 설정시 글로벌하게 설정
git config -global user.name ""
git config -global user.email ""
~ git 커밋 날짜 변경방법
~~첫번째방법
git rebase -i 변경하려는 특정커밋의 이전 값을 선택
=> 목록에서 pick 글자를 수정 : edit
=> GIT_COMMITER_DATE="Oct 1 10:00:00 2018 +0000" git commit --amend --no-edit --date "Oct 1 10:00:00 2018 +0000"
git log 확인
git rebase --continue : 변경된 날짜 반영
~~두번째방법
git filter-branch -f --env-filter \
'if [ $GIT_COMMIT = 20435adbsadf32423421sadfafs ]
then
export GIT_AUTHOR_DATE="Mon Oct 1 10:00:00 2018 +0000"
exprot GIT_COMMITER_DATE="Mon Oct 1 10:00:00 2018 +0000"
fi'
* 해당 글은 유트뷰 [동빈나]링크 채널을 참고 하였습니다.
댓글 없음:
댓글 쓰기