파일을 수정하다 보면 버전관리가 꽤 어렵다.
어떤 상황에서 기존 원본이 어떻게 쓰일 지 모르니까 삭제를 하지 못하고 계속 이런 식으로 저장되서 쌓이는 것이다.

코드도 마찬가지이다. 처음에 블로그를 커스텀 할 때는 문제가 없었는데 조금씩 여기 저기 테마를 입히다 보니 이제 새로운 기능을 하나를 추가하면 기존에 잘 보이던 구독 버튼이 없어진다던가 하는 문제가 발생한다.
처음에는 한 두 군데만 커스텀 하면서 그냥 주석으로 추가한 기능과 날짜 정도만 적어 놓았는데 이제부터는 이런 식으로 하면 나중에는 관리가 안 될 것 같아서 버전관리를 하면서 내가 언제 어떤 부분을 수정했는지 추적을 해야 겠다고 생각했다.

이럴때 사용하는 것이 Git(깃)이다.
1. Git vs GitHub
참고로 깃이랑 깃허브(고양이)는 다르다.
Git은 버전 관리 도구이고, GitHub는 Git을 사용하는 코드 저장소 서비스(클라우드 플랫폼)이다.
쉽게 말해서 Git은 코드를 로컬에서 관리하고 버전을 기록하는 도구, GitHub는 그 코드를 인터넷에 올리고 협업할 수 있게 도와주는 공간이다.
2. 깃(git)을 사용하면 좋은 점
- 과거로 빠꾸 가능
- 과거 작업 내용 열람 가능
3. PC에 깃 깔려있는지 확인하기
1. Command + Space로 Spotlight 검색창 띄우기
2. 입력창에 Terminal(터미널) 입력하고 터미널.app 실행
3. 터미널에 git --version 입력하면 설치되지 않은 사람은 설치할 수 있는 창이 뜨고, 이미 설치된 사람의 경우 현재 설치된 깃의 버전 정보가 화면에 나옴

4. 깃 설치하기(mac os)
1. homebrew 검색해서 설치
2. 터미널에 -brew install git 입력
3. 기존 브랜치 이름 main으로 바꾸기
4. 기본에디터 VSCode로 바꾸기
5. 이름등록
설치했으면 폴더 하나 만들고 마우스 우클릭
(바탕화면은 맥북에서 command + F3)

맥은 폴더에서 새로운 터미널 열기
윈도우는 PowerShell 창 열기
터미널에 이메일, 이름 정보 입력
이름은 깃허브랑 똑같은 이름 써야 하는 건 아니고 그냥 사람들이 누가 코드 작성자인지 알아 볼 수 있게 쓰면 된다.
git config --global user.name "최다인@gmail.com"
git config --global user.email "최다인"
이렇게 입력했으면 끝
별도로 입력에 성공했다는 메세지는 안 뜬다.
입력한 정보가 제대로 저장되었는지 확인하려면 다음 명령어로 확인
git config --global user.name
git config --global user.email
이 명령어를 실행하면 각각 설정한 이름과 이메일이 출력된다.
최다인@gmail.com
최다인
혹은 아래 명령어로 모든 깃 설정을 확인 할 수 있다.
git config --list
사용자 등록에 성공하면 내용에 설정한 이름과 이메일이 출력된다.

6. VSCode에서 해당 폴더 열고 터미널에 등록
VSCode에서 [폴더열기]로 위에서 지정한 폴더를 열어 준다.
상단바에서 [터미널] 탭 > [새 터미널]

7. 터미널 명령어
1. git init
작업 폴더에서 git 쓰고 싶다면
VSCode 하단 터미널에 `git init` 명령어 입력
git init
이제부터 git이 해당 폴더에서 하는 작업 감시하기 시작. 🚀
`git init`은 새로운 Git 저장소를 생성할 때 한 번만 실행 🎉
2. git add 파일명, git commit -m '메모
현재 파일 상태를 기록해 두고 싶다면 (코드 저장 후) 위 두 명령어만 입력해주면 된다.
git add 파일명
git commit -m '메모'

git add는 기록을 남기고 싶은 파일을 고르는 명령어, commit은 기록 저장소로 옮기는 명령어
3. git commit -am "메모"
앞으로 코드를 수정 할 때마다 `git add 파일명`이랑 `git commit -m '메모'` 위 두 명령어를 계속 써주면 된다.
참고로 git add 랑 commit 동시에 하는 명령어
git commit -am "커밋 메시지"

코드 한 줄을 삭제하고 다른 한 줄을 추가하니까 터미널에 1 insertion(+), 1 deletion(-)이라고 변경 내역이 출력된 것을 확인할 수 있다.
4. 여러개의 파일 한번에 커밋하기
작업 폴더에 있는 모든 파일 스테이징
git add .
작업 폴더에 있는 파일1, 파일2만 스테이징
git add 파일1 파일2
git add app.txt app2.txt // 예시
5. git status
상태창 열기
현재 내가 어떤 파일을 스테이징 해 놨는지, 어떤 파일이 수정이 됐는지 확인할 때 쓰는 명령어
git status

6. git log
커밋한 내역들(로그) 확인
git log

commit은 자주 할 필요 없고 간단한 기능 하나 완성했을 때 하는 게 좋다.
내가 웹프로젝트 할 때는 팀원들끼리 하루에 한 번 오후 6시에 커밋 하기로 했었다.
그리고 다음날 아침에 다 같이 브랜치에서 그 전날 했던 작업물을 불러와서 다시 코드 수정을 시작 했다.
'Git&GitHUB' 카테고리의 다른 글
[깃/깃허브] diff, difftool, gitGraph(VSCode 익스텐션) 사용법 (62) | 2024.11.30 |
---|---|
[깃/깃허브] 깃허브 좋은 기능 (웹에서 VSCode 열고 편집 / 커밋하기) (62) | 2024.11.30 |
[깃/깃허브] 백준허브(BaekjoonHub) 깃허브에 자동으로 코드 커밋하기 (3) | 2024.10.16 |
[깃/깃허브] 여러 Repository 하나로 합치기 (0) | 2024.03.14 |
[깃/깃허브] ⚠️ Github 3d 잔디 workflow run 안 될 때 해결법 (0) | 2024.03.13 |
파일을 수정하다 보면 버전관리가 꽤 어렵다.
어떤 상황에서 기존 원본이 어떻게 쓰일 지 모르니까 삭제를 하지 못하고 계속 이런 식으로 저장되서 쌓이는 것이다.

코드도 마찬가지이다. 처음에 블로그를 커스텀 할 때는 문제가 없었는데 조금씩 여기 저기 테마를 입히다 보니 이제 새로운 기능을 하나를 추가하면 기존에 잘 보이던 구독 버튼이 없어진다던가 하는 문제가 발생한다.
처음에는 한 두 군데만 커스텀 하면서 그냥 주석으로 추가한 기능과 날짜 정도만 적어 놓았는데 이제부터는 이런 식으로 하면 나중에는 관리가 안 될 것 같아서 버전관리를 하면서 내가 언제 어떤 부분을 수정했는지 추적을 해야 겠다고 생각했다.

이럴때 사용하는 것이 Git(깃)이다.
1. Git vs GitHub
참고로 깃이랑 깃허브(고양이)는 다르다.
Git은 버전 관리 도구이고, GitHub는 Git을 사용하는 코드 저장소 서비스(클라우드 플랫폼)이다.
쉽게 말해서 Git은 코드를 로컬에서 관리하고 버전을 기록하는 도구, GitHub는 그 코드를 인터넷에 올리고 협업할 수 있게 도와주는 공간이다.
2. 깃(git)을 사용하면 좋은 점
- 과거로 빠꾸 가능
- 과거 작업 내용 열람 가능
3. PC에 깃 깔려있는지 확인하기
1. Command + Space로 Spotlight 검색창 띄우기
2. 입력창에 Terminal(터미널) 입력하고 터미널.app 실행
3. 터미널에 git --version 입력하면 설치되지 않은 사람은 설치할 수 있는 창이 뜨고, 이미 설치된 사람의 경우 현재 설치된 깃의 버전 정보가 화면에 나옴

4. 깃 설치하기(mac os)
1. homebrew 검색해서 설치
2. 터미널에 -brew install git 입력
3. 기존 브랜치 이름 main으로 바꾸기
4. 기본에디터 VSCode로 바꾸기
5. 이름등록
설치했으면 폴더 하나 만들고 마우스 우클릭
(바탕화면은 맥북에서 command + F3)

맥은 폴더에서 새로운 터미널 열기
윈도우는 PowerShell 창 열기
터미널에 이메일, 이름 정보 입력
이름은 깃허브랑 똑같은 이름 써야 하는 건 아니고 그냥 사람들이 누가 코드 작성자인지 알아 볼 수 있게 쓰면 된다.
git config --global user.name "최다인@gmail.com" git config --global user.email "최다인"
이렇게 입력했으면 끝
별도로 입력에 성공했다는 메세지는 안 뜬다.
입력한 정보가 제대로 저장되었는지 확인하려면 다음 명령어로 확인
git config --global user.name git config --global user.email
이 명령어를 실행하면 각각 설정한 이름과 이메일이 출력된다.
최다인@gmail.com 최다인
혹은 아래 명령어로 모든 깃 설정을 확인 할 수 있다.
git config --list
사용자 등록에 성공하면 내용에 설정한 이름과 이메일이 출력된다.

6. VSCode에서 해당 폴더 열고 터미널에 등록
VSCode에서 [폴더열기]로 위에서 지정한 폴더를 열어 준다.
상단바에서 [터미널] 탭 > [새 터미널]

7. 터미널 명령어
1. git init
작업 폴더에서 git 쓰고 싶다면
VSCode 하단 터미널에 git init
명령어 입력
git init
이제부터 git이 해당 폴더에서 하는 작업 감시하기 시작. 🚀
git init
은 새로운 Git 저장소를 생성할 때 한 번만 실행 🎉
2. git add 파일명, git commit -m '메모
현재 파일 상태를 기록해 두고 싶다면 (코드 저장 후) 위 두 명령어만 입력해주면 된다.
git add 파일명
git commit -m '메모'

git add는 기록을 남기고 싶은 파일을 고르는 명령어, commit은 기록 저장소로 옮기는 명령어
3. git commit -am "메모"
앞으로 코드를 수정 할 때마다 git add 파일명
이랑 git commit -m '메모'
위 두 명령어를 계속 써주면 된다.
참고로 git add 랑 commit 동시에 하는 명령어
git commit -am "커밋 메시지"

코드 한 줄을 삭제하고 다른 한 줄을 추가하니까 터미널에 1 insertion(+), 1 deletion(-)이라고 변경 내역이 출력된 것을 확인할 수 있다.
4. 여러개의 파일 한번에 커밋하기
작업 폴더에 있는 모든 파일 스테이징
git add .
작업 폴더에 있는 파일1, 파일2만 스테이징
git add 파일1 파일2 git add app.txt app2.txt // 예시
5. git status
상태창 열기
현재 내가 어떤 파일을 스테이징 해 놨는지, 어떤 파일이 수정이 됐는지 확인할 때 쓰는 명령어
git status

6. git log
커밋한 내역들(로그) 확인
git log

commit은 자주 할 필요 없고 간단한 기능 하나 완성했을 때 하는 게 좋다.
내가 웹프로젝트 할 때는 팀원들끼리 하루에 한 번 오후 6시에 커밋 하기로 했었다.
그리고 다음날 아침에 다 같이 브랜치에서 그 전날 했던 작업물을 불러와서 다시 코드 수정을 시작 했다.
'Git&GitHUB' 카테고리의 다른 글
[깃/깃허브] diff, difftool, gitGraph(VSCode 익스텐션) 사용법 (62) | 2024.11.30 |
---|---|
[깃/깃허브] 깃허브 좋은 기능 (웹에서 VSCode 열고 편집 / 커밋하기) (62) | 2024.11.30 |
[깃/깃허브] 백준허브(BaekjoonHub) 깃허브에 자동으로 코드 커밋하기 (3) | 2024.10.16 |
[깃/깃허브] 여러 Repository 하나로 합치기 (0) | 2024.03.14 |
[깃/깃허브] ⚠️ Github 3d 잔디 workflow run 안 될 때 해결법 (0) | 2024.03.13 |