@마크다운
#5월 15일
##git 설치법
```
brew install git
```
##Shell(셸) 설정
brew install zsh zsh-completions
curl -L http://install.ohmyz.sh | sh
확인법
echo $SHELL
##자주 사용하는 명령어 별칭 (alias)지정하기
alias
alias <사용할 명령어>="<명령어 내용>"
## Pycharm 별칭 지정 예시
```
alias py="open -a /Applications/PyCharm\ CE.app/Contents/MacOS/pycharm"
```
![git 라이프 사이클]
(/Users/hongdonghyun/projects/자료/git-lifecycle.png)
##git 사용법
[git 파일 수정하고 저장하기 설명 링크](https://git-scm.com/book/ko/v2/Git%EC%9D%98-%EA%B8%B0%EC%B4%88-%EC%88%98%EC%A0%95%ED%95%98%EA%B3%A0-%EC%A0%80%EC%9E%A5%EC%86%8C%EC%97%90-%EC%A0%80%EC%9E%A5%ED%95%98%EA%B8%B0)
_git add 파일이름_ add를 하면 상태가 뉴파일 or modified로 바뀜
add한 파일에 내용을 수정하면 modified에 존재하게됨
수정된 파일을 add하면 modified가 초록색(수정이 적용됨)으로 되고 commit준비 상태가 됨(스테이징 상태)
commit을하게되면 nothing to commit이 뜸
```
- git init :git 폴더 설정
- rm -rf .git :파일 지우기 (-rf 하위폴더도 안물어보고 다 지움)
- git status : 변경사항보기
(최초변경파일 untracked 파일에 저장됨)
- git log : 추가되었던 로그 보기
- touch :파일 만들기
- git add : modified or newfile상태로 추가(add --all 전부추가)
- git commit -m :파일을 local repository에 저장한다(unmodified상태)
- -a : tracking 상태의 파일을 자동으로 staging area에 넣음
- git diff --staged : 스테이지 영역과 비교
- git diff : modified영역과 비교
- git mv {file_from file_to} : 파일이름 바꾸기
바꾼후 rm {file_to} add {file_to}명령 실행해야함
- git rm : tracked상태의 파일을 삭제 (rm후 commit해야 삭제됨 working directory에 파일도 삭제됨)
- 리눅스 파일 링크 걸기 : ln -s 원본파일 링크걸곳주소
- vim .gitignore
-내용에 *.xxx(확장자) 입력하면 인식하지 않는다.
```
#5월 16일
## git 이어서
bitbucket 비공개 주소
education.github.com
비밀저장소 학생아이디있으면 제공해줌
### git customizing
```
git config --global alias.adog "log --all --decorate --oneline --graph"
```
git adog명령어 만들기
## git 되돌리기
```
git commit --amend
```
전에 커밋한 내용은 지우고 다시 커밋
**커밋한 폴더에 추가하는 명령어**
## 파일상태 unstage로 변경
```
git reset HEAD : (file-name)
staged 상태에 있던 파일이
Unstaged상태로 변경됨
```
## modified파일 되돌리기
```
git checkout -- filename
```
최근 커밋된 버전으로 되돌리는방법
## 리모트 저장소
```
git remote add origin github 주소
```
## 원격 저장소 URL 변경하기
기존 원격 저장소 URL을 변경하기 위해 git remote set-url 명령어를 사용합니다:
_origin_은 저장소 이름
## 저장소에 파일 올리기
```
git push origin master
```
## 저장소 파일 다시 받기
```
git clone 저장소 주소
```
(주소 뒤에 폴더이름을 지정하면 생성됨)
```
echo 'hello' > abc.txt
(간단 파일만들기)
```
## 저장소 나눠쓰기 (공유)
remote 저장소에서 내용을 가져오려면
```
git fetch origin
```
저장소에 있는 내용을 가지고만 오는것
```
git merge origin/master
```
실제 적용해주는 명령어 (합치기)
한번에 해주는 명령어는
```
git pull origin
```
## 태그 넣기 (버전)
```
git tag -a v(버전)
```
### 나중에 태그하기
git tag -a v( 버전) checksum값
## 브랜치
git branch 이름
git branch -v 보기옵션
git log --decorate (가르키고 있는 커밋 확인)
git checkout 이름 : 사용하려는 브랜치로 바꾸기
git branch -m 바꿀이름 (현재의 브랜치를 바꿈)
git checkout -b 이름 :만들면서 바로이동
git branch -D : 삭제
git reset --hard HEAD^ : 브랜치 병합 되돌리기
### 연습해보기
develop에서 iss56을 만들고 하나의 커밋을 생성
이후 iss53과 develop을 merge
다음 iss56과 develop을 merge
다음 develop을 production에 merge
'notes' 카테고리의 다른 글
vim 단축키 (0) | 2017.08.28 |
---|---|
git 기초 2 (0) | 2017.08.28 |
pickycookbook project 에서 사용된 네이버 레시피 크롤러 (0) | 2017.08.23 |
2017-06-18 markdown 문법 필기 (0) | 2017.07.21 |
2017-07-05 aws 기초 (0) | 2017.07.21 |