github 사용 이유와 사용법
- git, github
- git을 로컬저장소에서 커밋 관리하기
- 원격저장소에 커밋
- 원격저장소에서 내려받기
- 협업의 시작 Branch
✅ 1. git, github
우리는 코딩을 배울수록 혼자보다 여러명이서 함께 만드는 소스코드에 익숙해져야 한다. 팀 프로젝트에서 사용할 공용 폴더를 만들고 그곳에 소스코드를 올려 놓는다고 가정해보면 초기 소스코드가 버전A라고 해보자. 코드는 계속 수정되어 코드 B가 되었고 최종 final코드가 되기까지 계속해서 수정이 이루어진다. 그러던 중 팀원 다수가 동시에 코드 B에서 수정을 진행하고 저장한다면 어떻게될까? 어떤게 최종 코드지?
팀 프로젝트에 참여하는 인원이 많고 기간이 길수록 이런 문제점때문에 버전관리가 필요하다. 이미 저장한 코드역시 ctrl + Z 로 원하는 지점으로 돌리고 싶다는 수요가 발생했고 여기서 파생된것이 github이다.
git? github?
git을 처음 접하는 경우 위 두개의 개념을 혼동할 수 있는데, 정확히 말하면 git은 소스코드 버전 관리 시스템이고 github는 git을 올려둘 수 있는 호스팅 사이트중 하나일 뿐이다. github외에도 다른 사이트가 있지만 가장 유명한것은 github.
✅ 2. git을 로컬저장소에서 커밋 관리하기
다른 사람과 협업 없이 혼자 개발 및 소스코드를 관리한다면 로컬저장소의 커밋만 다루어도 충분하다.
-
로컬 저장소로 사용할 폴더를 생성한다. (mysite)
-
terminal로 mysite폴더에 접속해서
git init
명령어를 통해 .git폴더를 생성한다. 여기서 생성된 .git폴더가 우리가 부르는 로컬 저장소이다.
-
커밋 만들기
git을 초기화 했다면 이제 커밋을 해보자. 먼저 관리를 위해 내 정보를 등록한다.git config --global user.email "[email protected]
git config --global user.name "aaaa"
만약 전역 등록이 아닌 대상 레파지토리에만 등록하려면 --global을 지우면 된다.
vi README.txt git add README.txt git commit -m "first commit"
위 명령어로 첫 번째 커밋이 된것이다.
-
커밋 되돌리기
위에서 만든 README.txt의 내용을 수정 후 다시 커밋을 했다고 하자.
위처럼 파일이 바뀌었다고 뜸과 동시에 타임라인이 생성된다.git log
명령어를 통해 확인해보면
위와 같이 내용을 확인할 수 있다.
여기서 commit뒤에 붙은 값을 복사해서git checkout 483586562721374126ae4732cdd98ba3c711e38a
를 쳐주면 (앞 7자리만 쳐도 된다.)
첫 커밋으로 돌아갈 수 있다.
로그값도 처음으로 돌아온 것을 볼 수 있다.
다시 돌아오고 싶다면 아래 명령어를 사용하면 된다.git switch - 또는 git checkout -
✅ 3. 원격저장소에 커밋
여기까지만 해도 혼자 버전 관리는 가능하지만 다른 개발자와 함께 버전을 관리하고 싶다면 (혹은 포폴용) github에 올려야 한다.
먼저 github에 레파지토리를 생성해준다.
여기서 터미널에git remote add origin 주소
를 치고 로그인을 하면 성공적으로 원격저장소에 커밋이 된다.
✅ 4. 원격저장소에서 내려받기
올려봤으니 내려받기도 해봐야 한다.
clone
원격저장소에서 코드와 버전 전체를 내려받는것이 clone이다. clone을 하면 최신버전, 이전 버전들, 원격저장소 주소 등이 로컬저장소에 저장된다.
git clone https://~~~~
아주 간단하다.
그런데 이렇게하면 git레파지토리(mysite) 안에 .git과 README.txt가 현재 폴더에 저장되는 것이 아니라 mysite라는 폴더가 생성되고 그 안에 .git과 README.txt가 생성된다. 상관은 없지만 폴더가 복잡해진다.
이런점이 싫다면 git clone https://~~ .
을 쳐주면된다. 차이점은 마지막에 한칸 띄고 . 을 사용하면 된다.
수정후 업로드
README.txt의 수정이 완료되고 다시 업로드를 하려면
git add README.txt
git commit-m "commit 내용"
git push origin master
를 순서대로 쳐주면 원격저장소의 내용이 수정된다.
이렇게 내가 업로드한 커밋을 B 개발자가 원격저장소에서 받아 로컬저장소를 갱신하려면
git pull origin master
명령어를 입력해주면 된다.
✅ 5. 협업의 시작 Branch
개발자 A, B가 동시에 작업을 해야하면 Branch의 사용이 필수적이라고 할 수 있다.
저기 보이는 master라는 브랜치가 main이라고 한다면 master브랜치에서 각자의 branch를 생성해 파일을 작업 후 다시 master브랜치로 합쳐줘야 동시에 작업할 수 있다. ( 물론 이렇게 해도 주의하지 않으면 각종 이유로 오류가 나긴한다.)
🥸 이외에도 많은 명령어와 방법들이 있지만 여기까지 알면 google의 도움으로 나머지는 해결할 수 있는것 같다. 다음엔 git의 원리에 대해 정리해보면 좋을것 같다!
Author And Source
이 문제에 관하여(github 사용 이유와 사용법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@dreamjh/github-사용-이유와-사용법저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)