-
[Github] 원격 저장소 연동하기기타 2022. 9. 16. 16:46
Git은 VCS를 제공하면서, 코드 및 작업물을 원격 저장소에 보관하는 역할도 합니다.
Git의 초기 설정과 관련된 내용은 Git 홈페이지의 링크로 대체하도록 하겠습니다.
Git 최초설정
본문의 내용은 위 링크의 계정 설정이 완료되었음을 가정하고 작성되었습니다.
Git bash를 사용해서 Github의 원격 저장소를 이용하는 방법을 살펴보도록 하겠습니다.
1. Git init
더보기해당 로컬 디렉토리에서 Git bash을 열어줍니다.
git init 명령어를 통해 해당 디렉토리를 git 로컬 저장소로 지정합니다.
.git 폴더가 생성됨을 확인할 수 있습니다. (숨김 폴더이기 때문에 설정에 따라 보이지 않을 수 있습니다.)
2. 원격 저장소 설정하기
더보기원격 저장소를 지정하는 과정입니다.
git remote 옵션으로 원격 저장소에 관한 조작을 할 수 있습니다.
- git remote는 원격 저장소를 확인하는 명령어입니다. 처음에는 원격 저장소가 지정되어있지 않아 아무것도 표시되지 않음을 볼 수 있습니다.
- git remote add [Name] [URL]은 원격 저장소를 추가하는 명령어입니다. Name에 들어간 origin은 지정한 원격 저장소의 이름을 나타낼 때 사용됩니다.
- git remote -v를 통해 지정된 원격 저장소의 URL을 확인할 수 있습니다.
3. git pull
더보기지정한 원격 저장소는 Github의 레포지토리 생성으로 만든 빈 저장소입니다.
위 저장소를 원격 저장소로 지정했고, 이제 이것을 사용하기 위해 위 내용을 한번 내려받을(pull) 것 입니다.
git pull [Name] [Branch] 명령어를 통해 원격 저장소의 파일을 내려받은 모습입니다.
4. git commit & push
더보기원격 저장소의 파일을 내려받았으니, 이제 로컬 저장소의 내용을 올리면(push)원격, 로컬 저장소의 동기화가 완료됩니다.
우선, 변경 내용을 반영하기 위한 과정은 세 가지가 있습니다.
- 첫 번째는 add입니다. 후술할 commit을 하기 이전에, commit할 파일들의 후보를 지정하는 과정입니다. 이를 스테이징(staging)이라고 하며, 후보로 지정된 파일들의 목록을 staging area라고 합니다.
- 두 번째는 commit입니다. staging area의 파일들을 변경 이력으로 저장합니다.
- 세 번째는 push입니다. commit된 내용들을 원격 저장소에 반영시킵니다.
결론적으로, 원격 저장소에 수정 내용을 반영하는 명령어는 push입니다.
하지만, push명령어는 그저 commit들을 올리는(push)수단일 뿐입니다. 실제 작업 이력은 commit을 통해 만들 수 있습니다.
이 commit 또한 현재까지의 모든 변경사항을 저장하는 것이 아니라, 사용자가 add를 스테이징한 파일들만을 이용해서 작업 이력을 만듭니다.
첫 번째로 git add입니다.
git add는 git add [File or Directory]명령어로 사용할 수 있습니다.
특정 파일, 디렉토리를 지정하여 추가할 수 있으며, 현재까지 변경된 모든 내용을 추가할 경우에는 콤마(.)를 이용할 수 있습니다.
뒤에 사용된 명령어인 git status는 staging area를 확인하는 명령어 입니다.
상황에 따라 new file이외에도 삭제, 수정 내역을 볼 수 있으며, staging area에서 내려야 할 파일이 있을 경우에 (add를 잘못했을 경우) git restore --staged [File]을 통해 되돌릴 수 있습니다.
다음은 staging된 파일들로 commit을 작성합니다.
git commit -m "[Message]"를 통해 메시지와 함께 커밋을 작성할 수 있습니다.
다음은 커밋 내용을 원격 저장소에 반영하는 push입니다.
psuh를 하게 되면 push의 결과가 출력됩니다. (에러, 경고 포함, 파일의 용량 등)
이후 원격 저장소에도 잘 반영이 된 것을 볼 수 있습니다.
Git bash외에도, Git을 이용하는 방법은 여러가지가 있습니다.
기본 GUI인 Git GUI, SourceTree, Github desktop 등 다른 프로그램을 사용해도 무방합니다.
정답은 없으니, 본인에게 잘 맞는, 혹은 팀이 사용하기로 한 프로그램을 이용하면 됩니다.
감사합니다.
'기타' 카테고리의 다른 글
[Gatsby] Gatsby start (1) 2023.08.31 [Github] Github.io로 개인 웹 페이지 만들기 (0) 2023.06.27 [Github] Project 사용하기 (0) 2022.09.12 [Github] Issue 사용하기 (0) 2022.09.09 [Github] Organization 만들기 (1) 2022.09.03