코딩항해기

[Git] Git 파일 내려받기, 올리기 (Pull Push) 본문

SCM/git

[Git] Git 파일 내려받기, 올리기 (Pull Push)

miniBcake 2024. 8. 11. 13:59

 

 

파일 업로드 Push

Git 상태

untracked 아직 git 관리 대상이 아닌 상태
traked unmodified 수정이 되지 않은 상태
modified 스테이징 영역에 들어온 파일 중 수정이 된 상태
staged 로컬 저장소에 올릴 준비가 완료된 상태 (이 상태에서만 commit이 가능하다.)

 

아직 깃 작업을 아무것도 하지 않은 파일을 untracked 상태로, 일단 깃 관리 대상으로 넣어 traked 상태로 변환시켜야한다.

그러기 위해서는 몇 가지 작업을 진행해야한다.

 

Git Bash 열기

깃 업로드를 진행할 폴더에 들어가 우클릭을 하면 Open Git Bash here가 있다.

(Windows11의 경우 추가옵션표시를 클릭하면 해당 이미지와 일치하는 창이 뜬다.)

(당연히 git 설치가 되어있어야 설정이 뜬다. https://git-scm.com/downloads)

 

git bash를 열면 git 명령어를 입력할 수 있는 창이 뜬다. 이제 해당 창에서 명령어를 입력하면된다.

 

해당 공간을 git 관리 대상에 넣기 위해서는 git init이라는 명령어를 사용해 최초 초기화를 한다.

$ git init

 

.git이라는 폴더가 생기며 브랜치 명이 경로 끝에 표시되면 성공이다. (현재 브랜치명 : master)

 

[브랜치 명 변경하기]

 

[git] 깃 브랜치 조회, 생성, 브랜치명 변경

요약깃 브랜치 전체 조회하기 git branch깃 브랜치 전체 상세 조회하기 git branch -v[브랜치명] 해당 브랜치로 이동하기 git checkout [브랜치명][브랜치명]으로 브랜치 생성하기 git branch [브랜치명][브

minibcake.tistory.com

 

 

현재 상태를 확인하면 untracked 상태로 이제 폴더 모든 파일을 stated 상태로 변경해야한다.

$ git add .
-- '.' 이 모든 파일을 의미한다.

 

파일의 상태가 변한 것을 확인 했다면, commit을 할 수 있다.

$ git commit -m "메세지"

 

commit까지 완료한 파일은 더이상 status 명령어로 확인 할 수 없으며, 더 이상 commit할 파일이 없다는 것만 알려준다.

이제 Push를 할 준비가 끝난 것이다.

 

이미 레포지토리를 연결해둔 상태라면 바로 push를 하면 되지만, 아직 레포지토리가 연결되지 않은 상태라면 레포지토리를 연결해야한다.

(git을 처음 사용하는 경우라면 유저 정보 등록도 해야한다.

git config --global user.name "깃허브이름"

git config --global user.email "이메일" )

 

현재 정리는 pull push가 주제이므로 레포지토리 등록은 간단하게 정리하고, git 초기 세팅 때 다시 정리하겠다.

$ git remote add origin "git 경로.git"

*origin은 해당 경로를 저장하는 변수명으로 다른 이름을 사용할 수 있지만 origin이 일반적이다.

*주소는 우클릭 paste로 붙여넣을 수 있다.

 

git remote -v로 연결된 경로를 확인할 수 있다.

이제 모든 준비를 마쳤으므로 업로드를 진행할 수 있다.

$ git push 경로변수명 브랜치명
$ git push origin master

 

이후 git hub 해당 레포지토리에서 업로드를 확인 할 수 있다.

 

 

 

 

Pull

pull을 통해 git hub 레포지토리에 있는 파일을 내려받거나 파일 상태를 갱신할 수 있다.

push때 진행한 경로 설정이 잘 되어 있다면 바로 pull을 내려받을 수 있다.

단, 파일 상태를 갱신하는 pull의 경우에는 현재 파일의 상태가 git hub 레포지토리의 과거 상태 중 하나여야한다.

변동이 있다면 내려받는 것이 불가능하다. (상태 불일치 에러 발생)

$ git pull 경로변수명 브랜치명
$ git pull origin master

 

로컬 폴더에서 확인하면 git hub 레포지토리 상태와 똑같이 파일이 변경된 것을 확인할 수 있다.