티스토리 뷰
#섹션 4
15. Initialization
- git init "원하는 폴더이름" : 사용자가 정한 이름의 깃 리포지토리가 생성된다
- $ git init demo : demo 폴더가 생성된다.
- 디폴트 브랜치 master : 깃 리포지토리가 생성됬을 때는 디폴트로 마스터 브랜치로 설정된다.
16. Local Git States
- working directory : 내가 현재 작성하고 있는 프로젝트 폴더. 어플리케이션의 모든 파일, 폴더를 가지고 있다.
- Staging Area : Working directory에서 변경된 파일들이 Staging을 거쳐 Repository에 저장된다.
- Repository(.git folder) : Commit 된 파일이 저장된다. Git history가 있다.
17. First Commit
- $ touch README.md : demo 폴더에 README.md 파일 생성
- $ vim README.md : 파일을 열어서 텍스트 입력. 저장 종료(:wq!)
- $ git add README.md : README.md 파일을 Git Staging area에 올린다.
- $ git commit -m "First commit" : commit을 하여 Repository(.git folder)에 저정한다.
18. Repository and the Git folder
- $ ls -al : demo 폴더에서 ls -al 명령어를 치면 ".git" 폴더가 있다.
- $ cd .git : git이 내부적으로 관리하는 폴더이다. 여기에 접속하면 (GIT_DIR!)이라고 브랜치가 나온다.
- $ rm -rf .git : recursively, forcefully .git 폴더를 삭제한다. demo 폴더는 git init 이전 상태로 돌아가게된다
19. Start with existing project
- $ git init . : 깃 init을 하는데 .의 의미는 현재 폴더라는 것을 뜻한다.
20. Commit and Message
- $ touch LICENSE.md : LICENSE.md 파일을 생성한다.
- $ vim LICENSE.md : LICENSE.md 파일에 텍스트를 입력할 수 있다.
- $ git add . : 여기서 .을 왜 쓰는지는 잘 모르겠음
- $ git commit : Notepad++ 창이 뜨면서 커밋 메시지를 입력하고 저장할 수 있다.
21. Commit Details with Log and Show
- $ git log : 커밋 로그를 보여주는 명령어이다.
- $ git show : 각각의 파일들에 어떤 것들이 변경되었는지 디테일하게 보여주는 명령어
22. Express Commit
- $ git ls-files : 현재 트랙킹 되고 있는 파일들만 보여준다.
만약 새로운 파일을 생성하고 커밋을 하지 않았다면 이 명령어로는 해당 파일이 보이지 않음.
- $ touch new.file , $rm new.file : touch는 파일을 생성, rm은 파일을 제거
- $ git commit -a : staging area에 add와 동시에 commit을 하는 명령어
- $ git commit -am "update Readme" : -am을 쓰면 커밋 메시지까지 추가할 수 있다.
23. Backing out Changes
- $ git reset HEAD README.md : Staging 된 파일을 Unstaging 하는 명령어.
- $ git checkout -- README.md : 파일이 수정되기 이전 상태로 변경하는 것. README.md 파일을 이전 상태로 바꾼다.
24. History and Making New Commands with Alias
- $ git log --oneline --graph --decorate --all
- oneline : 간략화된 커밋 내역을 볼 수 있다. 한줄로 커밋 내용 확인
- graph : 브랜치 구조도를 볼 수 있다.
- decorate : 어떤 커밋들이 어느 브랜치 소속인지 보여줌
- all : 모든 브랜치의 히스토리 제공.
- $ git config --global alias.hist "log --oneline --graph --decorate --all"
: alias.hist는 "log --oneline --graph --decorate --all"에 별칭을 부여하는 것이다.
그래서 위의 log~all 명령어의 별칭은 hist가 된다. 이것을 config 파일에 전역으로 등록하는 명령어이다.
- $ git config --global --list : 내가 지정한 별칭을 config 파일의 리스트에서 찾을 수 있다.
- $ git hist : 이제 log~all 길게 입력하지 않아도 git hist만 입력해도 로그가 나온다.
25. Rename and Delete Files
- $ git mv example.text demo.txt : example 파일을 demo 파일로 이름을 변경한다는 명령어
- 위 명령어를 하면 자동으로 staging으로 파일이 올라가게 된다. 변경을 적용하려면 commit을 한다.
- $ git rm demo.txt : demo.txt 파일을 제거한다.
- 위 명령어를 하면 자동으로 staging으로 파일이 올라간다. 변경을 적용하려면 commit을 해야한다.
26. Managing Files Outside of Git(Git 명령어가 아닌 일반 Bash명령어로 하는 것)
- $ mv LICENSE.md LICENSE.txt : LICENSE파일의 이름을 변경한다. 이 때 mv는 일반 Bash 명령어이다.
- $ git add -u : 기존파일에 변경(delete,modify)이 있으면 staging을 해준다. -u는 update에 해당한다.
하지만 Untracked 파일은 staging하지 않는다. 왜냐하면 기존에 없었던 파일이기 때문이다.
- $ git add -A : delete, add 된 파일들을 모두 staging 하는 명령어이다.
- $ rm myfile.txt : myfile.txt를 삭제하는 명령어. 이후에 commit을 해줘야 반영이 된다
27. Git ignore 사용법
- $ touch app.txt : app.log 파일을 생성
- 이제부터 이 app.log 파일을 git ignore 해보겠습니다.
- $ touch .gitignore : gitignore 파일 생성.
- $ vi .gitignore : gitignore 파일을 편집한다. *.log을 입력하면 확장자가 log 인 모든 파일을 무시한다는 뜻
'Back-end' 카테고리의 다른 글
[Spring Boot] 회원, 질문 객체 관계 맵핑 및 생성일시 등록 (0) | 2018.10.03 |
---|---|
[초보자를 위한 Git] Diff, Tag 및 기본적인 브랜치 사용 (0) | 2018.09.30 |
[초보자를 위한 Git] Git 설치 및 Tool 설정 (0) | 2018.09.30 |
[C++] Set에 대해서 알아보자! (0) | 2018.09.28 |
[C++] Vector에 대해서 (0) | 2018.09.26 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- pop_back
- 인셉션
- Inception
- Spring boot
- 깃허브
- 항해플러스후기
- 열반스쿨기초반
- 월급쟁이부자들
- docker
- 폭포수
- 항해플러스백엔드
- 도커
- push_back
- front
- GIT
- 유즈케이스
- ```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````
- 재테크공부
- github
- 2023년
- 항해솔직후기
- 깃
- 개발자 회고
- 관계대수
- 부동산공부
- Use case
- 파라메터
- 월부닷컴
- resize
- 내년은 빡세게!!
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함