지식 정보 공유/etc

Git / Github 사용법

Charming_ham 2021. 1. 7. 16:12
728x90
반응형
728x90

1. Git 이란 무엇인가?

 

git 은 버전관리 어시스트 시스템으로 개발 시 업데이트되는 코드들의 버전을 기록해두고,

관리할 수 있는 소스코드 버전 관리 시스템이다.

 

2. 우분투에서 git 시작하기

 

- 설치 순서

 

 Ctrl + Alt + T 로 터미널 접속

1. 터미널 실행

2. git 설치
$ sudo apt-get install git

3. git 설치여부 확인 
$ git --version

 

3. Github 란 무엇인가?

 

git 과 함께 사용하며,  git 에서 관리하는 소스코드들을 온라인에서 다른 사람과 함께 공유하며, 협업할 수 있는 서비스.

 

*로컬 (개인 컴퓨터) 에서 작업한 내용을 git 이 저장해 두었다면, Github 라는 온라인 작업 공간에서 원격으로도 작업 가능

* 많은 개발자들이 코드를 오픈소스로 공유하고 있으며, 여러 명이 한 팀을 이루어 개발을 진행할 떄

   복잡한 코드 버전들을 효율적으로 관리할 수 있다.

 

4. 로컬에서 github 로 코드 보내는 방법

 

1. 로컬 git과 원격에 있는 github를 연결하기 (동기화하기)
$ git config --global user.email "my-email@gmail.com"
$ git config --global user.name "my-username"
 
 *my-email@gmail.com" 부분은 github 가입한 이메일 입력 (대소문자 구분)
 "my-username" 부분은 github 가입 시 설정한 username 입력 (대소문자 구분)

2. git 에 등록한 config 정보확인
$ git config -l

 

5. 내 컴퓨터에 로컬 저장소 만들기

1.터미널 실행

2. 최상위 디렉토리로 이동
$ cd ~

3. 저장소로 쓸 폴더 생성 (여기에서는 workplace라는 폴더명으로 사용)
$ mkdir workplace

4. 생성한 폴더로 이동
$ cd workplace

5. git을 생성한 폴더에 심기
$ git init

6. 생성한 폴더안에 git 디렉토리가 생성되었는지(심어졌는지) 확인
$ ls -a

git 정보를 확인했다면 끝!

 

6.  README 파일 생성하고  add, commit 로 보내기

 

 README 파일이란 블로그의 대문짝 배너(이미지) 처럼

github 의 repository(저장공간) 의 작업물 소개 역할을 하는 대문짝 배너로 생각하면 된다.

Markdown 이라는 언어를 통해 작업할 수 있다.

 

1. 첫 번째 repository 에 담길 README 파일 생성 및 # first-repository 라는 문구 입력
   *터미널 실행 후 앞서 작업 공간 목적으로 생성한 파일 위치로 이동 후 작업해야 함.

$ echo "# first-repository" >> README.md

2. 생성된 README.md 파일 확인
$ ls

3. 생성된 README.md 파일에 입력한 문구 확인
$ cat README.md

4. git 이 추적하고 있는 변화를 확인 (README.md 파일의 수정사할을 git이 잘 추적하고 있는지 확인)
$ git status

5. README.md 파일을 git에 저장
$ git add README.md
$ git commit -m "new readme file"

*commit 뒤 -m 은 추가적인 옵션을 뜻하는 명령어로, 뒤에 " " 사이의 내용은 해당 커밋에 대한 설명을 적음

 

7.  add 와 commit 의 차이점

 

* 둘 다 현재의 변화를 기록하기 위한 명령어

* repository(저장공간) 은 workplace > index > repository 로, 작업공간 > 인덱스 공간 > 저장공간, 

   총 3가지 공간으로 분류되어 있는다.

 

add : 위 3가지 공간 중 작업공간에서 인덱스 공간으로 변화를 기록하는 명령어이다.

           인덱스 공간이란 최종 마지막 저장 공간으로 저장되기전 필요에의해 생성된 가상공간이다.

           즉, 쉽게말해 서류 결제를 올렸을 때, 최종결제 전 중간 결제라인으로 보면된다.

 

commit : add 명령어를 통해 인덱스 공간으로 저장된 것을 저장공안으로 변화를 기록하는 명령어이다.

                   즉, 최종공간으로의 이동을 화정하는 것으로, 최종결제를 받는 과정으로 생각하면 된다.

 

 

8. Github 저장소 만들기

*로컬 저장소와 원격 저장소를 연결하는 작업이며 (동기화), 이 둘의 연결고리는 내 github 저장소의 주소가 된다.

1. 터미널을 통해 로컬 저장소 디렉토리로 이동
$ cd ~/workplace

2. github 저장소 주소를 통해 연동
$ git remote add orgin https://github.com/xxxx/xxxx.git
* http 부분에는 저장하고자하는 github 주소를 붙여 작성
* orgin 명령어는 앞으로 github의 주소 대신  orgin 이라는 이름을 통해 대신하겠다는 의미이다.

3. 로컬 저장소의 기록을 원격 저장소로 전송하기 (내 컴퓨터의 작업물을 github로 전송하기)
$ git push origin master

4. push 를 통해 작업물을 옮길때 요구되는 github 의 username 과 password 입력

* add 와 commit 를 통해 최종 결제 받은 작업물을 push 명령어를 통해서 github 에 전송

 

9. Github 의 작업물을 로컬 저장소로 가져오기

1. 터미널 생성 후 최상위 디렉토리로 이동
$ cd ~

2. github 에서 가져올 작업물을 저장할 새로운 폴더 생성
(여기서는 project로 생성, 기존에 생성한 작업 폴더로 가져오고자 한다면 따로 생성할 필요없음) 
$ mkdir project

3. 생성한 폴로도 이동
$ cd project

4. github 의 원격저장소 주소를 통해 저장소 통째로 가져오기
$ git clone https://giyhub.com/xxx/xxxx.git

5. github 로 부터 가져온 목록 확인
$ ls

6. 복제된 저장 공간으로 이동(ls 명령어를 통해 나온 폴더(디렉토리)로 이동)
$ cd ham

7. 불러온 README.md 파일 실행(여기서는 구문 출력)
$ cat README.md

 

10. 로컬로 가져온 파일 수정 후 다시 원격 저장소로 보내기

1. add new contents 라는 구문을 README.md 파일에 입력해보기 (작업물 수정)
$ echo "add new contents" >> README.md

2. 수정된 내용을 git 이 잘 추적하고 있는지 확인
$ git status

3. 수정된 파일을 인덱스 공간에 add 하기
$ git add README.md

4. 인덱스 공간에 add된 파일을 commit 하기
$ git commit -m "new contents"

5. commit 한 작업물을 github 저장소로 push 하기
$ git push origin master

6. github 의 username, password 입력

 

11. 로컬 저장소를 원격 저장소와 동일하게 업데이트하기

      github 저장공간에서 가져온 파일을 B라는 새로운 로컬 공간에서 작업 후 업로드했을때, 
     기존의 로컬 저장공간과 github저장공간의 내용물을 동기화하기  

 

1. 로컬 저장공간으로 이동
 $ cd ~/workplcae
 
2. 목록 확인하기 (수정된 작업물이 동기화됐는지 확인하기 위함)
$ ls

3. github 저장공간을 동기화
$ git pull origin maseter

4. 동기화 되었는지 작업을 확인을 통해 수정내역 조회
$ cat README.md
728x90
반응형