1. Git 설치
http://git-scm.com/에서 Windows에 들어가 다운을 받으면 된다.
네트워크 메모리가 모자라면 다운이 느리다......(유투브 틀어놓고 다운을 받으려고 했는데, 너무 느려서 껐다...)
다운을 받은 후에, cmd창을 열어서
git --version
명령어를 통해 버전정보가 뜨는지 확인했다.
버전 정보가 떠서 성공!!야호
(원래 설치가 제일 어려운 법..)
2. 환경 설정
환경 설정은 참고에 적어두었던 사이트에서 보고 그대로 하였다.
3. 로컬 저장소 등록
Git은 원격 저장소와 로컬 저장소 두 종류의 저장소를 제공하는데,
1) 원격 저장소(Remote Repository) : 파일이 원격 저장소 전용 서버에서 관리되며 공유를 위한 저장소
2) 로컬 저장소(Local Repository) : 내 PC에 파일이 저장되는 개인 전용 저장소
평소에는 자신의 로컬 저장소에서 작업하다가 작업한 내용을 공개하고 싶을 때에 원격 저장소에 업로드한다. (Push)
반대로 다른 사람이 작업한 파일을 로컬로 가져올 수도 있다. (Pull)
로컬 저장소를 만드는 방법은 자신이 새로운 저장소를 만들거나, 이미 만들어져 있는 원격 저장소를 로컬로 복사해 오는 것, 두가지 방법이 있다.
먼저 저장소를 아예 새로 만들어 사용해보았다.
로컬에 'tutorial'이라는 이름의 디렉토리를 만들어, 새 저장소로 등록해보자!!
tutorial 폴더로 이동하여
git init
를 입력하였다.
3. 파일 commit
파일 및 폴더의 추가/변경 사항을 저장소에 기록하려면 '커밋'을 해야하는데,
'커밋'을 하면 이전 상태부터 현재 상태까지의 변경 이력이 기록된 커밋이 만들어진다.
커밋은 아래 그림처럼 시간순으로 저장되며, 최근 커밋부터 거슬러 올라가면 변경 이력을 알 수 있다.
각 커밋은 영문/숫자로 이루어진 40자리 고유 이름이 붙는데, 저장소에선 이 고유 이름을 보고 각 커밋을 구분한다.
후에 버그 수정, 기능 추가 등 특별한 의미가 있는 업데이트를 작업별로 구분해서 각각 커밋하면, 나중에 이력을 보고 변경 내용을 찾기 쉽다.
커밋은 이력을 남기는 게 중요하기 때문에, 커밋 메시지를 필수로 입력해야 한다.
메시지가 없으면 커밋이 실행되지 않는다.
이제 파일을 만들어서 commit을 직접 해보자!! 두근두근둑는
1) tutorial 폴더에 1.txt를 만들어 내용 적기
라고 내용을 적고 저장 (파일의 내용을 적을 때까지만 해도....commit의 제대로 된 의미를 몰랐다....ㅎㅎ이젠 안다!!!)
2) 파일 인덱스에 등록하기
자, 여기서 인덱스?가 뭘까
Git에서는 폴더를 '작업 트리(Work Tree)'라고 부른다.
그리고 커밋을 실행하기 전의 저장소와 작업 트리 사이에 존재하는 공간을 '인덱스'라고 한다.
즉 '커밋'작업은 '작업트리'에 있는 변경 내용을 저장소에 바로 기록하는 것이 아닌, 그 사이의 공간인 '인덱스'에 파일 상태를 기록하게 되어있다.
따라서 저장소에 변경 사항을 기록하기 위해서는, 기록하고자 하는 모든 변경 사항들이 '인덱스'에 존재해야 한다.
예를 들어 10개 파일을 수정했지만, 그 중에 7개만 공개하고 싶다? 그렇다면 10개 중 7개를 선택하는 것이 '인덱스에 등록'하는 작업이다.
인덱스는 가상의 공간이며, 이 공간이 있어서 우리가 원하는 일부 변경 파일들만 선택하여 커밋할 수 있는 것이다.
인덱스를 알았으니, 만든 파일 1.txt를 인덱스에 추가해보자.
git add <파일이름>
을 통해 추가하며, 추가하기 전과 후의 상태는
git status
를 통해 알 수 있다.
인덱스 추가 전과 후를 비교해보면 달라진 것을 알 수 있다.
참고로
git add .
를 입력하면 모든 파일을 인덱스에 등록할 수 있다.
3) 파일 커밋하기
이제 1.txt를 커밋해보자
git commit -m "<커밋메시지>"
를 입력하면 된다.
변경 이력을 확인하려면
git log
위 명령어를 사용하면 된다.
제대로 commit된 것을 확인!
4. Push
Push란 웹 상의 원격 저장소로 변경된 파일을 업로드하는 것을 의미한다.
push를 하면, 원격 저장소에 내 변경 이력이 업로드되어, 원격 저장소와 로컬 저장소가 동일한 상태가 된다.
이제 실제로 해보자!!
먼저 github에 새로운 repository를 만들어야 한다.
새로운 repository를 만들었다!!
이름은 myGitTutorial로 설정하였다.
이제 이 곳을 원격 저장소로 사용할 것이며,
주소를 통해 접근할 수 있다.
참고로 긴 주소는 사용자 지정 이름으로 기록해 둘 수 있다. 기록해두면 긴 이름을 칠 필요가 없다.
git remote add <사용자 정의 이름> <원격 저장소 주소>
의 명령어를 통해 지정할 수 있다.
다음으로 push를 하면 되는데,
git push <원격 저장소 주소> <브랜치명>
을 통해 한다.
도중에 사용자명과 비밀번호를 요구하면 입력하면 된다.
repository의 이름은 tt로 설정하였고, master로 push하였다.
push를 한 후 Git페이지를 들어가 확인하면?
성공했다!!
5. Clone
Clone이란 원격 저장소의 내용을 통째로 다운로드하는 것을 말한다.
원격 저장소의 tutorial을 그대로 받아 tutorial2라는 로컬 저장소에 복제해보자
복제할 때는
git clone <원격 저장소 url> <로컬의 폴더명>
를 실행하면 복제가 된다.
후에 복제한 tutorial2라는 폴더와 그 안에 txt파일이 있는지 확인하면 끝!!
6. Push
복제한 tutorial2에서 파일 1.txt를 수정하고 커밋해보자.
위 내용으로 변경하였다.
1) 변경 후 커밋
그대로 tutorial2에서
먼저 변경한 파일을 인덱스에 추가해주어야겠지!!
그 다음 commit을 진행해보자
"add 설명을 추가함"이라는 커밋 메시지를 적어 커밋하였다.
2) 그대로 push
push를 마친 후에 Git페이지에서 변경내역을 보면 방금 push한 커밋이 추가되어있음을 확인할 수 있다.
7. Pull
Pull이란 원격 저장소에서 로컬 저장소로 업데이트를 하기 위해 실행하는 것이다.
원격 저장소에서 최신 변경 이력을 다운로드하여 로컬에 그 내용을 그대로 적용한다.
변경한 tutorial2를 pull하여 tutorial1의 1.txt가 바뀌게 pull해보자.
이 작업은 tutorial에서 진행하는 것이다.
명령어는
git pull <원격저장소 url> <로컬 저장소>
후에 파일을 확인해보니, 변경한 파일의 내용과 동일했다!!
첫 pull성공
마지막으로 log를 통해 기록을 보니,
저 add 쏼라쏼라는 한글이라 저렇게 나온다.....ㅎ.........
한글 설정을 따로 해야하는 듯 하다....음......위에서 했는데 말이지...흠
다음 시간엔 merge를 해봐야지 야호
[Reference]
https://backlog.com/git-tutorial/kr/intro/intro5_1.html
'기타 딩가딩가 > Github' 카테고리의 다른 글
3] Branch (실습) (0) | 2020.03.09 |
---|---|
2] Branch (개념) (0) | 2020.03.09 |