Git

[Git 입문편] 6. push, pull & fetch

미래의 개발왕 2021. 3. 7. 23:48
728x90
반응형

<git push>

본 포스팅은 저의 인터넷 강의인 실무자가 알려주는 Git - 입문편의 강의안을 바탕으로 작성하였습니다.


push

  • 로컬 브랜치의 정보를 원격 저장소로 업로드
  • Clone 한 리모트 저장소에 쓰기 권한이 있어야 함
  • 같은 브랜치로 여러명이 받아서 누군가 push를 했다면 나는 push 안됨
  • 다른 사람이 작업한 것을 가져와서 합친 후에 (Merge or Rebase) Push 할 수 있음
git co master
git push [origin] [master]
  • 옵션
    • --force (-f)
      • 내 로컬 브랜치로 원격 브랜치를 덮어 씌워버림
      • 내가 혼자 작업하던 feature 브랜치에서만 사용해야함
      • 시나리오: 누군가 악의적으로 master브랜치를 망가뜨린다면?

 


 

pull & fetch

  • Clone 한 서버에서 데이터를 가져오고, 그 데이터를 자동으로 현재 작업하는 코드와 Merge (2.5 Git의 기초 - 리모트 저장소 )
  • fetch: 서버에서 데이터만 가져오고 자동으로 코드를 합치지는 않음
-- 새로운 디렉토리
cd ~
mkdir git-other
cd git-other
git clone 'https://github.com/HwangNara/git-exer.git'
cd git-class
vi README.md
git ci -am 'Modify README.md'
git push
-- 원래 디렉토리
git pull

 

pull & push 실습

  • 환경: master에서 딴 test 브랜치 / 2개의 터미널
  •  내용
    • fetch vs. pull
    • pull 충돌 실험
    • branch 삭제
  • 추가 명령어
    • 파일 변경 내용 보기: git diff
    • 리모트의 브랜치 삭제: git push origin --delete {branch명}
    • 삭제된 리모트 브랜치를 로컬에도 반영: git fetch -p
반응형