Github 셋팅 및 다양한 기능 01
Github란 ?
GitHub(깃허브)는 분산 버전 관리 시스템인 Git을 기반으로 하는 코드 호스팅 플랫폼입니다. 소프트웨어 개발 프로젝트를 위해 Git을 사용하여 버전 관리하고, 코드를 호스팅하고, 협업하는 데 사용됩니다. GitHub은 개발자 커뮤니티와 오픈 소스 생태계에서 매우 인기 있는 플랫폼으로, 다양한 프로젝트를 호스팅하고 소프트웨어 개발 과정을 지원합니다.
Github 초기 설정
Github는 커밋할 때 마다 사용자 정보를 기록하고, 편집기 설정에 따라 메세지를 작성할 수 있다.
터미널에서 Github 버전 확인하기
터미널을 실행한 후 git –version을 입력합니다
1
2
ryun__04@gimjin-uui-MacBookAir ~ % git --version
git version 2.39.3 (Apple Git-146)
버전 —-라고 나옵니다.
저장되어 있는 Github 설정 확인하기
데스크탑의 name과 email을 확인합니다. 본인의 name과 email로 바꿔줍니다.
1
2
3
4
5
6
7
8
9
ryun__04@gimjin-uui-MacBookAir ~ % git config --list
credential.helper=osxkeychain
init.defaultbranch=main
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
user.name=sss
user.email=ksssssss6@gmail.com
현재 이름이 sss / email이 ksssssss6@gmail.com로 돼있습니다.
1
2
git config --global user.name "JinWoo Kim"
git config --global user.email "kjw040416@gmail.com"
이름을 JinWOo Kim / email을 kjw040416@gmail.com 바꿉니다.
업로드할 파일로 경로를 바꿔줍니다
1
ryun__04@gimjin-uui-MacBookAir github % cd KIMJW04.github.io
깃 상태 확인 및 파일 업로드
모든 파일을 보여주라고 입력합니다
1
2
3
4
5
ryun__04@gimjin-uui-MacBookAir class2024 % ls -a
. .gitignore index.html quiz
.. README.md javascript sss
.DS_Store asssets json test.html
.git effect mysql webd
mac 사용자는 Github 계정 설정에가서 developer settings에서 토큰을 설정해야 합니다
1
2
3
4
5
6
7
8
9
10
ryun__04@gimjin-uui-MacBookAir class2024 % git push https://사용자이름:토큰@github.com/사용자이름/저장소명.git
Enumerating objects: 24, done.
Counting objects: 100% (24/24), done.
Delta compression using up to 8 threads
Compressing objects: 100% (13/13), done.
Writing objects: 100% (15/15), 20.58 KiB | 10.29 MiB/s, done.
Total 15 (delta 8), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (8/8), completed with 7 local objects.
To https://github.com/사용자명/저장소.git
214b985..96cee96 main -> main
GitHub 계정에 SSH 키를 추가합니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
ryun__04@gimjin-uui-MacBookAir class2024 % ssh-keygen -t rsa -b 4096 -C "이메일"
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/ryun__04/.ssh/id_rsa):
Created directory '/Users/ryun__04/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/ryun__04/.ssh/id_rsa
Your public key has been saved in /Users/ryun__04/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:eQ296bDtvc3uCZpUfPrr1GS4yxOaRwgCi6u3fGLJCKI kjw040416@gmail.com
The key's randomart image is:
+---[RSA 4096]----+
| |
| . . |
| . o . . |
| . . ...o.o . |
| . S.o.++..o|
|o . . =o =+.|
|o. + . ..o*.o.|
|E o.* . ..=o*+.|
| oo+ o..*X*|
+----[SHA256]-----+
git 작업에 SSH URL을 사용합니다:
1
ryun__04@gimjin-uui-MacBookAir class2024 % git remote set-url origin git@github.com:사용자이름/저장소명.git
Github에 파일을 올립니다
1
2
3
4
5
ryun__04@gimjin-uui-MacBookAir class2024 % git status
On branch main
Your branch is up to date with 'origin/main'.
nothing to commit, working tree clean
저는 올릴 파일이 없습니다. 올릴 파일이 있으면 추가적으로 여러가지 파일이 뜹니다.
1
ryun__04@gimjin-uui-MacBookAir KIMJW04.github.io % git add .
수정된 모든 파일을 업데이트 한다고 설정합니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
ryun__04@gimjin-uui-MacBookAir KIMJW04.github.io % git commit -m "2024.04.08"
[main 5ab0ec4] 2024.04.08
3 files changed, 126 insertions(+)
create mode 100644 _posts/coding/2024-04-08-github01.md
ryun__04@gimjin-uui-MacBookAir KIMJW04.github.io % git push origin main
Enumerating objects: 12, done.
Counting objects: 100% (12/12), done.
Delta compression using up to 8 threads
Compressing objects: 100% (7/7), done.
Writing objects: 100% (7/7), 2.91 KiB | 2.91 MiB/s, done.
Total 7 (delta 5), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (5/5), completed with 5 local objects.
To https://github.com/KIMJW04/KIMJW04.github.io.git
8d0c3ab..5ab0ec4 main -> main
변경 사항을 스테이징하고 커밋합니다
1
2
3
4
5
6
7
8
9
10
ryun__04@gimjin-uui-MacBookAir kimjw04.github.io % git push origin main
Enumerating objects: 9, done.
Counting objects: 100% (9/9), done.
Delta compression using up to 8 threads
Compressing objects: 100% (5/5), done.
Writing objects: 100% (5/5), 910 bytes | 910.00 KiB/s, done.
Total 5 (delta 4), reused 0 (delta 0), pack-reused 0
remote: Resolving deltas: 100% (4/4), completed with 4 local objects.
To https://github.com/KIMJW04/KIMJW04.github.io.git
5ab0ec4..027eaff main -> main
Git push를 통해 성공적으로 코드를 원격 저장소에 업로드하셨습니다. 아래는 업데이트된 정보입니다:
원격 저장소: https://github.com/KIMJW04/KIMJW04.github.io.git 브랜치: main 커밋 범위: 5ab0ec4에서 027eaff까지 변경 사항이 원격 저장소의 main 브랜치로 반영되었습니다. 계속해서 원격 저장소와 동기화할 수 있습니다.
필자는 터미널로 github를 사용하는데 미숙해서 부족한 부분들이 설명에 있어 부족한 부분이 많습니다. 댓글 남겨주시면 수정하도록 하겠습니다. 변변찮은 글 읽어 주셔서 감사합니다.