※이때, 직접 이동할 폴더를 작성하여도 되고 아래 명령어로 파일을 만든 후, 그 파일로 이동하여 만드는 경우도 있습니다.
mkdir 폴더 명 -> "폴더 명"인 폴더를 만들기 {make directory}
cd 폴더 명 -> 생성 된 "폴더 명" 폴더로 이동하기 {change directory}
1. 깃허브에 업로드할 폴더를 생성합니다. 해당 폴더 에서 git bash를 열어 아래 명령어를 입력합니다.
# 현재 프로젝트에서 변경사항 추적(버전 관리)룰 시작
$ git init
=> 위 명령어를 입력하고 숨긴 파일 표시를 체크하여 .git 파일이 생성되면 성공적으로 생성된 것입니다.
2. 깃 환경 설정하기
#개행 문자 설정
$ git config --global core.autocrlf input (Mac OS
$ git config --global core.autocrlf true (Windows / Mac OS 는 true 대신 input)
#사용자 정보 - 커밋(버전 생성)을 위한 정보 등록
$ git config --global user.name "사용자 이름"
$ git config --global user.email "사용자 이메일 주소"
사용자 이름과 꼭 동일하게 작성할 필요는 없습니다. 하지만 가급적이면 깃허브에 작성한 이름과 동일하게 설정하는 것이 좋습니다.
# 구성 확인 - q키를 눌러서 종료!
$ git config --global --list
위 명령어를 입력하여 이제까지 등록했던 정보를 확인할 수 있습니다.
user.name=JeonYongHak
user.email=charismayoung1993@gmail.com
difftool.sourcetree.cmd=''
mergetool.sourcetree.cmd=''
mergetool.sourcetree.trustexitcode=true
core.autocrlf=true
3. 로컬 깃에 변경사항을 추적할 파일 및 폴더를 생성 및 수정
# 변경사항을 추적할 특정 파일을 지정
$ git add index.html
# 모든 파일의 변경사항을 추적하도록 지정
$ git add .
추적 x(Untracked) - 빨간색
추적 (Tracked) - 초록색
4. 로컬 깃에 변경사항을 프로젝트로 생성
# 메시지(-m)와 함께 버전을 생성
$ git commit -m "메시지 내용"
{ 로컬 저장소를 원격 깃허브 저장소로 연결하기 }
1) 폴더에 업로드할 파일을 생성 및 내용을 입력 => $ git add 파일명.확장자 명
2) 수정 및 저장할 파일을 로컬 저장소로 커밋 => $ git commit -m "커밋한 메시지(내용에 관한 입력)"
+ $ git log (작성 및 커밋한 파일이 정상적으로 저장이 되었는지 확인)
3) 로컬 저장소에 원격 저장소를 연결하기
=> $ git remote add origin<원격 repository에 생설할 브랜치 이름> <깃허브 저장소 주소> [처음 1번만 입력하면 됨!]
※ shift + insert 를 입력하게 되면 복사한 깃허브 저장소 주소를 붙여 넣을 수 있습니다.
로컬 main 브랜치를 원격 origin에 푸시
$ git push -u origin main
로컬 master 브랜치를 원격 origin에 푸시
$ git push -u origin master
$
오류 메시지 없이 위 내용이 나오면 제대로 연결된 것 입니다.
+ $ git remote -v : 로컬 저장소에 원격 저장소가 제대로 연결되었는지 확인
github https://github.com/JeonYongHak/github.git (fetch)
github https://github.com/JeonYongHak/github.git (push)
4) 로컬 저장소와 원격 저장소 동기화하기
$ git branch -M main - 저장소의 main브랜치로 업로드하기 위한 것 (만약에, 로컬 저장소의 깃 branch
이름이 main이면 이 과정은 생략하여도 됩니다.)
$ git push -u origin<원격 저장소에 업로드할 브랜치 이름> main - 지역 저장소의 브랜치 origin의 main 브랜치로 push
하라는 명령어 {처음 1번만}
=> 이 과정으로 push가 끝이 나면, 성공적으로 로컬 저장소의 커밋한 내용들이 원격 저장소로 업로드 되었다는 것
5) 원격 저장소에 로컬 파일 업로드하기 - git push
$ git push origin(원격 저장소 이름) master(로컬 저장소 이름)
이 명령어는 로컬 저장소의 master 브랜치를 github이라는 이름의 원격 저장소에 푸시합니다. 원격 저장소의 이름은 로컬에서 설정할 때 결정되며, git remote add 명령어를 사용해 설정할 수 있습니다. 예를 들어:
이렇게 하면 원격 저장소가 github이라는 이름으로 추가되고, 이후에 git push github master 명령어를 사용해 푸시할 수 있습니다.
로컬 main 브랜치를 원격 origin에 푸시
$ git push -u origin main
로컬 master 브랜치를 원격 origin에 푸시
$ git push -u origin master
github 저장소에 1번이라도 push를 하였으면 위의 내용처럼 간단하게 push 할 수 있습니다.
이때, 새로운 수정 사항이 생길 때마다 push하여도 상관 없지만 여러 개의 수정 사항을 생성하고 난 뒤에 한꺼번에 push를 하여도 아무런 상관이 없습니다. 수정 사항을 전부 작성하고 나서 한꺼번에 push하는 것을 추천합니다!
<파일의 untracked 상태 & tracked 상태>
untracked 상태
작업 중인 파일은 워킹 디렉터리 안에 있게 되는데, 이 공간에 파일을 새로 추가하거나 수정한 내용을 깃이 자동으로 관리해주지는 않습니다. 그렇기에, 워킹 디렉터리 안에 존재하는 새로 생성된 파일은 모두 untracked 상태로 존재하고 이 파일을 관리하려면 깃에 추적하라고 통지를 해주어야 합니다.
tracked 상태
untracked 상태에서 git add 명령어를 사용하여 untracked 파일을 tracked 파일로 상태를 변경해주어야 합니다.
=> 정말 아니다 싶으면 그냥 $ git push -f origin<원격 저장소 이름> main<로컬 저장소 이름> 으로 강제로 푸쉬해서 커밋합니다! [단, 강제로 푸쉬하게되면 데이터가 손실될 수 있습니다!]
{원격 저장소에서 파일을 다운로드 받기}
$ git clone <원격 저장소 주소 url>
{커밋한 버전 되돌리기} => 커밋 내용을 1번 버전이 아닌 1버전 뒤로 되돌리는 것
$ git reset --hard HEAD~1
커밋 내용 중 1버전 뒤로 커밋을 완전히 되돌리는 것
이때, 이전 버전으로 커밋을 되돌린 과정을 취소하려면 오직 한 번만 취소가 가능합니다. 이때 아래와 같은 명령어를 입력하면 되돌린 과정을 취소할 수 있습니다.
$ git reset --hard ORIG_HEAD
{버전 관리하지 않을 폴더 및 파일 설정} - - git ignore 사용법
{깃허브 내에서 여러 개의 브랜치로 커밋한 파일들을 깃허브에서 merge 하는 법 -> merge 후 기존 브랜치 삭제} -- 진행 중...
<리눅스 명령어>
$ pwd : 현재 위치의 경로가 나타나게 됩니다. (print working directory)
$ ls : 현재 디렉터리에 어떤 파일이나 디렉터리가 있는지 확인합니다. (list)
{$ ls - 명령 옵션}
-a : 숨긴 파일이나 디렉터리도 함께 표시합니다.
-ㅣ : 파일이나 디렉터리의 상세 정보를 함께 표시합니다.
-r : 파일의 정렬 순서를 거꾸로 표시합니다.
-t : 파일 작성 시간순 (내림차순) 으로 표시합니다.
$ clear or $ cls : 터미널 창 지우기 (창에서의 모든 명령어를 지워줍니다. - 기능은 유지)
$ cd : 터미널 창에서 디렉터리로 이동(change directory)
$ cd 디렉터리 명 : 하위 디렉터리 중 해당 디렉터리 명을 가진 주소로 이동합니다.
<디렉터리를 나타내는 기호>
- "~" : 현재 접속 중인 사용자 디렉터리를 가리킵니다.
- "." : 현재 사용자가 작업 중인 디렉터리입니다.
- ".." : 현재 디렉터리의 상위 디렉터리입니다.
<디렉터리 생성 및 삭제>
- mkdir 폴더명 : 디렉터리 안에 해당 폴더를 생성합니다.
- exit : 터미널 종료하기
{vim(빔) (텍스트 편집기) }
$ vim test.txt - (생성하거나 찾을 텍스트 파일 호출)
$ cd Documents
$ mkdir test
$ cd test
{ vim(빔)의 ex 모드 명령 }
- :w 또는 :write - 편집하던 문서를 저장합니다.
- :q 또는 :quit - 편집기를 종료합니다.
- :wq - 편집하던 문서를 저장하고 종료합니다.
- :q! - 편집하던 문서를 저장하지 않고 편집기를 종료합니다. 이때, 확장자가 .swp인 임시 파일이 생성됩니다.
- :wq 파일명 - 편집하던 문서를 지정한 파일 이름으로 저장합니다.
'협업 및 기타 툴 정보 > 깃 & 깃허브' 카테고리의 다른 글
README.md 파일에서 동영상 및 텍스트 한 눈에 보기 (1) | 2024.11.20 |
---|---|
Git 핵심 명령어 (2) | 2024.11.10 |
Git & Github (0) | 2024.06.29 |