Git이란? :
분산 버전 관리(히스토리 포인트 저장, 불러오기) 시스템 → 원하는 시점마다 버전을 만들고 동료가 만든 버전으로 이동하거나 동료의 코드를 내 코드에 업데이트할 수 있다. → gui도 있어!
- master: git init(혹은 git clone)으로 만든 point(branch)
→ 2110부터 repository의 default branch 이름을 master에서 main으로 바뀐다고 한다.
- remote: 코드를 올리는 링크 (github, bitbucket, gitlab 등 클라우드, 혹은 회사서버, USB, 내컴)
- repository : ‘저장소’ 라고 하고 파일이 변경 이력 별로 구분되어 저장됨.
- Remote Repository : 원격 저장소 전용 서버에서 관리되며 여러 사람이 공유하는 저장소
- Local Repository : 내 PC에 파일이 저장되는 개인 전용 저장소
- origin: 원격 저장소 경로이름
- Collaborator: 원격 저장소에 commit을 push 할 수 있는 자들, setting에서 변경가능
Local에서 나의 결과물을 깃(remote)에 올릴때
가장 간단한 방법부터 알아보자.
첫번째는 기존 다른 사람이 작업한, 혹은 내가 작업해온 레포지토리를 다른 디바이스로 가져올 때
git clone https://~~
# 위의 코드로 git clone 을 하면 private 인 경우 token: 을 입력하라고 나온다.
# 한번에 해결하고싶다면 아래와 같이!
git clone https://<token>@github.com/sumsum/private.git
가장 많이 사용하는 기능은 역시 pull 과 push 이다.
처음 결과물을 git 과 remote(연결) 할 때
git init # 내컴퓨터 프로젝트 폴더에 여기서 git을 사용할것이라고 명령 (처음에만 한다)
git add . #깃 로그가 파일을 tracking할 수 있도록 (git commit 이전에 반드시)
# "git add []" 변경한 파일중 올릴것만 선택
git commit -m '[commit name]' # 선택한 파일 변경사항을 한 덩이(=version)로 묶고 설명붙임
** git add 는 버전관리할 파일을 ‘stage area’ 에 올리는 역할을 한다. 이는 아직 github 에 올린 것은 아니고 tracking 할 수 있도록 처리하는 작업이다.
이후 commit 을 통해 버전에 포함시키는 역할을 한다.
** 그러므로 깃허브 저장소에 푸시하지 않고, stage 하고 커밋만 해도 변경사항이 내 레포지토리에 저장된다!
** 깃허브의 역할은 내 레포지토리의 복사본을 저장하는 역할. 그래서 단순 히스터리를 관리하는 일은 깃허브가 없이도 가능하다. 원래 깃이 그런역할.
그리고 나서 github 사이트에 들어가서 새로 연결할 repository 를 만든다.
→ 그러면 repository 의 URL 을 얻을 수 있다.
git branch -M main
git remote add origin [URL] # 내 컴퓨터에 깃허브 저장소 알려주기(?)
git push -u origin master # version을 깃허브에 올리기
remote 한 이후 git 을 업데이트 할 때
git add .
git commit -m '[commit name]'
git push
위와 같이 사용한다.
'Python 및 Torch 코딩 이모저모' 카테고리의 다른 글
Git 이용법 3 (0) | 2024.11.13 |
---|---|
Git 이용법 2 (0) | 2024.11.12 |
Tmux (혹은 일반 터미널) TIMEOUT (0) | 2024.10.22 |
vLLM (0) | 2024.05.19 |
Pdb 디버깅 (0) | 2024.03.09 |