하면서 이런이런것을 공부했다[연구노트]/Git, Docker, Pytorch

[Git] Git개념 및 기본 명령어 공부1(우분투 Terminal)

junha1125 2020. 2. 17. 21:33

아래의 내용들은 이 동영상 강의 내용을 정리한 내용입니다.

https://www.youtube.com/playlist?list=PLRx0vPvlEmdD5FLIdwTM4mKBgyjv4no81

1. Git 설치와 사용법 

모든 사람들이 소스코드를 공유한다는 전제로, 사람들이 무료로 이용하게 만들어 놓았다. 

로그인 후 리포지터리를 만들어 보기. 

Add gitignore : 올리지 않은 파일을 선택하여 git 레파지를 만든다.  

Add license : 오픈소스 라이센스 어떤것을 추가했는지 명시 

Git을 terminal에 찍으면 다양한 사용방법을 확인할 수 있다. 

 

 가장 맨 처음 git을 나의 환경으로 사용하기위해 쳐야하는 명령어는 다음과 같다.

$ git config --global user.name junha1125
$ git config --global user.email jnha@gmail.com

나의 컴퓨터를 local로 사용하기 위해 처줘야하는 명령어 

우리의 컴퓨터 : local repository 

Git 사이트 : Remote repository 

그리고 push과정을 거처야 한다.  

Remote repository에 파일이 올라간 것을 확인할 수 있다. 

 

 

 

2. 오픈소스를 사용하는 이유 

https://ndb796.tistory.com/185?category=1029186 

 

 

4. 동작원리 

working에서 add를 추가해 줌으로써, staging Area에 커밋할 파일 올린다. 

https://ndb796.tistory.com/187?category=1029186 

Merge : comflict가 발생 했을 때를 위해서.  

Pull = fetch, merge를 한번에 사용할 수 있는 명령어이다.  

Local repo : 

해쉬값을 이용해서 comflict을 막는다.  

 

 5. git명령어 공부해보기. 

git내부 변경된 상태를 확인한다.  

$ git status 

commit할 파일 추가하기 즉 Stageing Atrea에 파일 추가하기.

$ git add ./file 

 

Add를 해서 Staging Area에 있는 파일을 제거할 수 있다(즉 add취소 

$ git reset ./file 

reset으로 부분 add제거를 할 수 있지만,  

전체 add제거도 가능하다.(reset뒤에 파일을 안적으면 전체 add가 취소된다.) 

 

굳이 내가 add할 파일을 명시하지 않아도, 수정된 전체를 add하겠다면 " . " 사용 

$ git add . 

 

$ git status 

후 어떤 곳에 수정이 있었다고 뜨면... 

$ git checkout -- junha.py 

와 같이 checkout명령어를 이용하면 원래 상태로 돌려준다.  

즉 위에 수정됬다는 내용이 전부 사라진다.   

 

$ git commit m "message 추가하기"
$ git push  

 

 

 6. Commit 내역 수정하기 

$ git pull 

$ git log 

최근까지 commit내역들을 살펴본다 

 

$ git reset --hard 1916e39cf972406de7f89407ab35587e450342d0 

여기 부분 이후의 변경건은 모두 무시하겠다. 

reset에 soft옵션, mixed옵션도 있다. = 

$ git push f  

을 해야 오류가 안뜬다 

-f : 강제로 push하는 방법  

 

Git message 수정하는 방법 

http://tech.javacafe.io/2018/03/01/how-to-change-git-commit-message/ 

$ git commit amend 

만 치면 vi가 뜬다. (vi사용법 알아야한다.) 

 

최근 commit내용 수정하기   

$ git commit amend 

:a   -> 수정시작 
Esc ->  :wq!  -> 저장