Post

[git] git add ~ push


잠깐!



★ 작업전 백업용 폴더 하나 만들어놓고 작업하는 걸 추천합니다. 잘못하면 파일 날라가요 ㅋㅋ.

git add ~ push 를 시작하기 전 간단하게 원리를 설명드리고 시작하겠습니다.




Desktop View

git add ~ push

로컬저장소에 있는 제 파일 및 폴더를 git add~push로 콘솔창(cmd나 vscode의 터미널을 뜻함)에 입력하여
원격저장소에 저장하는 것입니다.
만약? 원격저장소에는 있는데 로컬저장소에 없다면 어떻게 해야하는가?
그때는 원격저장소에서 파일을 pull(다운로드)하여 로컬저장소에 저장하고 작업을 시작하시면 됩니다.

만약 원격저장소에 파일 1, 2 이있고 로컬저장소인 내 노트북에 파일 1이 있는상태에서 파일 3을 올리려 하는데 이상태에서
git add~push 하면 100% 오류납니다.


(원격저장소의 파일들 = 로컬저장소내노트북 파일들) 이렇게 동일한 상태에서
내 노트북에 파일 +a 로 더있다면 그건 git add~push 하는데 문제 없습니다.
이제 이럴땐 어떡하느냐? 아래 git pull을 봐주세요 ㅎ









git pull

원격 저장소의 자료를 요청해 내 노트북의 자료에 적용시켜 원격 저장소의 자료와 동일화 시킴\ ex) 원격저장소에 자료 1, 2, 3, 4 있고 로컬저장소(내 노트북)엔 자료 5가 있는데
자료 5를 git add하고 싶으면 cd 경로명\경로명2\?로 경로 설정을 한 뒤
git pull을 해서 원격저장소로부터 없는 파일 1,2,3,4 를 끌어오고 난 뒤 5를 업로드 가능합니다.



확인할 것!

  • checklist 1 백업용 폴더를 준비해놓고 작업을 시작하는가?
  • checklist 2 원격저장소에는 파일이 없지만 로컬저장소에는 그곳에 보낼 파일이 존재하는가?



  • 확인 완료 ㅎ_ㅎ





이제 깃허브 초기설정에 관해 알아보겠습니다. 먼저 원하는 경로에 들어오셔서 작업해야합니다.
예를들어 제가 바탕화면의 joonhwan 이라는 폴더에서 작업하고싶다면
※ 참 입력할때 $는 빼야합니다 ㅎ (혹시 모르실 분들을 위해 적었습니다.)

1
$ cd desktop\joonhwan
1
2
3
4
$ git config --global user.name "유저명"
$ git config --global user.email "이메일 기입"
$ git remote -v         (리포 설정유무 확인)       #혹시 clone설정이 되있는데 초기화 하고싶다면 git init 입력
$ git clone "리포 주소"


리포주소 찾는 방법입니다



이어서

1
2
3
4
5
6
$ git status          # 커밋 가능한 파일들을 보여줌
$ git add 파일명       혹은   git add .    (이건 그 폴더안의 전체 파일 업로드)
$ git commit -m "아무거나 적으면 됨"
$ git branch         #  main 이나 master 둘중에 하나일텐데
$ git push origin main        #  main일 경우
$ git push origin master      # master인경우



번외

  • git add . 했는데 특정 파일을 빼고싶다?       git reset 파일명


  • 커밋 메시지 변경     git commit --amend


  • 최신 파일 커밋을 없애고싶다        git reset --hard


  • git add 취소        git reset HEAD 파일명 혹은 git reset HEAD 폴더명/


  • git commit 취소        git reset --soft HEAD^        (예전에 커밋한 staged상태로 돌아감,   hard땐 전 커밋내용으로 돌아감.)
    git reset HEAD~2    마지막 2개 커밋 취소


  • git pull, merge 충돌시 취소 git reset --merge ORIG_HEAD


  • git reset –hard 로 코드가 다날라갔다면?        git reflog 입력 후 git reset --hard HEAD@{돌아갈 n번째 숫자 입력}


  • 브랜치를 변경하자        git branch -m 기존브랜치 새로운브랜치     예시) git branch -m master main


  • 파일 및 폴더 삭제        git rm 파일명 혹은 폴더명 (본인의 노트북, 원격저장소에 있는 것 둘다 삭제)
    git rm --cached -r 폴더명/     혹은 git rm --cached -r 파일명 (본인 노트북에 자료는 살려두고 원격저장소의 자료만 삭제)
  • 대소문자 신경X        git config core.ignorecase true


  • deleted된 파일이 많다?      git add -u (u = update 최신화 하겠다)


  • 깃허브 다른 작업물 올리고 싶을때      git remote -v 어떤 리포에 등록되있는지 확인 git remote rm origin 잠시 제거 git init 초기화 git remote add origin 깃리포주소`








아래 사진을 클릭하면 제 취미공간으로 이어집니다 ㅎㅎ 여기에서 메모 및 일상을 기록하는데 놀러오실 분들은 언제나 환영합니다!


링크로 이동하려면 사진을 클릭

어서오셔 ㅎ


참고


‘Outsider’s Dev Story’      git이 추적하지 않는 untracked files 한꺼번에 삭제하기


‘noyo0123.log’      git 명령어 정리, 에러정리


‘gmlwjd9405’     [Git] git add 취소하기, git commit 취소하기, git push 취소하기

This post is licensed under CC BY 4.0 by the author.
3D GIF