앞서서, 


깃을 설치했었고


깃허브와 소스트리를 연동했었다.


소스트리를 사용할 준비가 되었는데. 뭘 해야할지 모른다. 


왜냐하면 아무것도 모르기 때문이다.


그럼 먼저,


소스트리에서 깃허브로 전송하기 위해


Push와 Pull을 먼저 알아보자.


Push = 밀다, 밀어붙이다.

Pull = 당기다, 끌어당기다.


무슨 의미인지 바로 알 것이다.


깃허브(원격 저장소)로 밀어넣는 것이 Push

깃허브(원격 저장소)에 있던 코드를 내 PC(로컬 저장소)로 당겨오는 것이 Pull


그리고 Push를 하기 위해 전단계로 Commit을 해주게된다.


Push 

그럼 소스트리에서 Push를 해보도록 하자.


먼저 목적지 경로로 설정된 폴더로 이동한 후,


텍스트 파일을 추가해보자.


좌측에 'Working Copy' 탭, 한글 버전의 경우 '작업 공간' 탭을 눌러보면


폴더에 변화가 없을 때는 Nothing to Commit이라는 문구과 함께


아무것도 표시되지 않지만,


index.txt 파일을 추가했다면, 다음과 같이 화면이 변한다.



확대해보면,




이렇게 Unstaged files 부분에 방금 생성된 index.txt 파일이 ? 표시와 함께 나타났다.


Push를 해 원격 저장소로 보내기 위한 전 과정으로 커밋을 해줘야한다.


Commit 


커밋을 하기 위해서는 


1. Stage All 버튼을 통해 Staged filed로 파일들을 올린다음,


2. Commit 메세지를 작성한뒤, 커밋버튼을 누르면 된다.


이렇게 되면, 상단 Push에 1이 나온다. 1은 Push할 파일이 1개 존재한다는 의미이다.


이 상태가 되면 Push를 위한 준비가 끝났다.



Push를 눌러보자. 그러면 다음과 같은 창이 나온다.


위 이미지에서 다시 한번 Push를 누르면 깃허브의 repository(저장소)에 소스가 올라가게 된다.

처음하는 Push라면 



깃허브 인증창이 뜰 수도 있다. 입력해주자. 이메일이 아니라 Username이다!



Fetch + Pull


반대로 다른 팀원이 Push를 통해 깃허브에 올린 코드를 받아올 경우를 생각해보자.


1. Fetch 버튼을 누른다.

2. Fetch 창이 뜨는데 그냥 OK 누르면된다.


아무런 동작도 일어나지 않는다.


왜냐하면 혼자이기 때문이다. 팀원이 Push로 올렸을 경우 내려받기로 받는거지...


아무것도 변경된 것도 없고 받을 것도 없으므로 아무런 반응도 없다.


만약 팀원이 있고, 받을게 있다면 Pull에도 숫자가 뜨게 된다. 


이 때 Push와 마찮가지로 버튼을 눌러 받아올 수 있다.





결론


푸시(Push) = 업로드. 백업


내 PC( 로컬 저장소)에서 작업한 것을 깃허브(원격 저장소)로 변경된 파일을 업로드하는 것.

이 과정을 Git에서는 푸시(Push)라고 한다. 


풀(Pull) = 다운로드. 업데이트


원격 저장소에서 로컬 저장소로 업데이트하기 위해 풀(Pull)을 사용함.

다른 사람이 원격 저장소에 올려놓은(Push) 변경 내용을 내 코드에 업데이트 



Posted by sungho88
,