본문 바로가기
Computer Science/git, github

CLI환경에서 git clone생성부터 commit, push까지(MacOS)

by 코듀킹 2023. 5. 1.

* MacOS 환경을 기준으로 작성했습니다.

 

 

기본적인 git의 프로세스는 위와 같습니다. 위의 그림을 잘 기억하면서 git clone생성부터 commit과 push까지 수행해봅니다.

 

기본 커멘드

  • ls: list segment. 하위로 선택할 수 있는 Directory나 파일들을 모두 보여준다.
  • ls -a: 숨김파일까지 모두 보여준다.
  • ls -l: line by line으로 한 줄씩 부가정보를 출력해준다.
  • cd ..: Directory 뒤로가기
  • cd {repo name}: Directory 변경
  • mkdir: Directory 생성
  • rm {file name}: 파일 삭제
  • cat {file name}: 텍스트 파일 내에 존재하는 모든 텍스트 라인들을 합쳐서 shell에 표현한다.

 

0. Terminal, Repository 생성

이제 terminal을 킵니다. ls를 입력하여 하위 파일들을 확인 후에, 파일 위치를 cd Documents를 입력하여 Directory를 변경합니다.

mkdir dev를 입력하여 directory를 생성합니다. Documents 아래 dev라는 directory를 두고, 작업 결과물을 모두 dev 파일에 집어넣은 가음 이 directory를 깃 저장소에 한번, 클라우드에 한 번, 외장하드에 한달에 한 번 이렇게 주기적으로 백업을 하면 컴퓨터를 도난당한다던지 해도, 쉽게 보관할 수 있습니다.

$ ls # 하위 Directory 확인
$ cd Documents # Documents Directory로 이동
$ mkdir dev # dev 폴더 생성
$ cd dev # dev Directory로 이동

 

 

이제 깃허브 사이트에 접속하여 로그인 후, 오른쪽 상단 + 버튼을 눌러서 repository를 생성하고, 원하는 Repository name을 설정합니다. 이때, Add a README file을 체크하고, MIT License를 체크합니다. (MIT License는 기본적으로 어떤 일이든 할 수 있는 완전히 오픈된 오픈소스를 생성하겠다는 뜻)

 

 

 

1. clone 만들기

Repository를 생성했으면, 초록색 Code 버튼을 누른 뒤, HTTPS 주소를 복사한다. 그리고 터미널에서 git clone을 입력 후, 해당 주소을 붙여넣기한다. 마지막으로 해당 directory로 이동한다.

 

$ git clone "Cammand + V"
$ cd {repo name}

 

여기까지 진행했다면, git config --list를 입력하여 user.name, user.email, core.editor=vim, core.pager=cat 이 설정되어있는지 확인 한다. 확인되지 않는다면, 아래 커맨드를 입력하여 설정한다.

 

$ git config --global user.name "당신의유저네임"
$ git config --global user.email "당신의메일주소"
$ git config --global core.editor "vim"
$ git config --global core.pager "cat"

 

 

2. touch로 .gitignore 파일 만들기

touch를 입력 후에 파일이름을 입력하면, 새로운 directory를 생성할 수 있습니다.

$ touch .gitignore

.gitignore을 사용하는 이유는 다음과 같습니다.

 

  • 파일 백업 정보, 제품 빌드 정보 등의 로컬 구성 재정의 등을 저장소에 올려놓지 않기 위함. 이런 파일들을 untracked files로 설정하여 git이 이 파일들을 track하지 않도록함.
  • 각종 노이즈들을 방지함. 원하지 않는 파일이 업로드되는 것을 방지하고, 혹여나 발생할 수 있는 데이터 충돌로 인한 손실을 방지함.

 

즉, 불필요한 파일이 github 등의 repo에 올라가지 않도록 하는 것입니다.

 

 

3. vi로 파일 내부 내용 입력

vi(또는 vim)은 유닉스 시스템 상에서 CLI기반의 텍스트 에디터 역할을 합니다. Windows의 메모장 같은 개념입니다. vi로 해당 파일의 내용을 입력해줍니다. 이 때, gitignore.io 사이트에서 MacOS, vim 등을 설정하여 생성 버튼을 누르면 텍스트가 뜨는 데 그걸 복사한 후, 붙여넣기 해줍니다.

$ vi .gitignore
# 1) 'i' 입력
# 2) gitignore.io 사이트에서 생성된 내용 복사붙여넣기
# 3) 'esc' + ':wq' + 엔터

 

4. git status 입력하여, 파일 상태 확인

git status를 입력하면, 현재 작업 중이 파일이 어떤 상태인지 확인 할 수 있습니다. 아래와 같이 뜬다면, 아직 add가 되지 않았다는 뜻입니다. 

 

 

5. add 작업 수행 후, 다시 git status 입력하여 파일 상태 확인

git add .gitignore을 입력하여, add 작업을 수행하고 나면, 파일이름이 초록색으로 바뀝니다. 그럼 add가 되었다는 뜻이니 commit을 수행해줍니다.

$ git add .gitignore
$ git status

 

6. commit 수행

git commit -m "feat: Create .gitignore"

 

7. push 하기

마지막으로 push 작업을 수행합니다. push 작업을 수행할 때는 username과 userpassword 입력을 해야하기 때문에 사전작업이 필요합니다. 

 

다시 깃허브에 접속하여, 우상단 프로필클릭 -> Setting -> 좌하단 Developer Setting -> Personel access tokens  -> Tokens (classic) -> Generate new token (classic) -> Note에 이름 작성 -> Expiration=No expiration(공부 용도로만 쓸 것) -> 모든것 체크(공부 용도로만 쓸것) -> Generate token(이후 새로고침 금지) -> token 복사 여기까지 작업해줍니다.

$ git push origin main
$ {Username}
$ {Password: 위에서 키값 복사한 걸 붙여넣기 하고 엔터}

 

여기까지 완료했다면 아래와 같이 3개의 파일이 생성됐을 겁니다. 

 

이후, 작업할 언어를 선택하여 같은 방식으로 파일을 만들고, 중간중간 커밋하면서 작업한 후에 마지막으로 Push까지 완료해주면 됩니다. 그리고 나서 해당 파일의 history에 들어가면 그동안 커밋했던 내용들이 저장되어있는 걸 볼 수 있습니다.

 

'Computer Science > git, github' 카테고리의 다른 글

Python 개발환경 설정  (2) 2024.09.11
Git branch 기본 사용법 및 Github 협업 방법  (0) 2023.05.03

댓글