Closed fhsi1 closed 3 years ago
적다보니 분량이 좀 많아보이네요 ㅎㅎ.. 그래도 나름대로 자세하게 적었으니 도움이 되었으면 좋겠습니다!😁
꼼꼼한 안내 감사합니다!! 잘 따라해보도록 하겠습니다~!
유진님 덕분에 제가 작업한 디렉토리에서 팀 Repo로 풀리퀘 할 수 있었습니다. 감사합니다!!
깃에대한 부담감이 있었는데 한결 나아졌습니다. 정리해주셔서 감사합니다!
최고예요 유진님!!
@fhsi1 유진님, Git 원격 저장소의 내역을 로컬 저장소에 반영할 때 git clone을 다시 해줘야하나요? git pull origin main 명령어로 추가된 내용만 가지고 올 수 있을까요? git pull origin main으로 업데이트된 내용만 가지고 올 수 있다면, 로컬 디렉토리의 경로를 Clone한 Repo로 맞춰줘야하나요....?
@jaehwan2
우선, 말씀해주신 git 원격 저장소가
메인으로 저희가 pull-request 를 보내는 저장소인지,
fork
해온 각 개인의 저장소인지 잘 모르겠습니다..ㅠ
fork
해온 각 개인의 저장소라면,
로컬에 기존에 git clone
해 놓은 디렉토리가 있을텐데요,
그 디렉토리에 새로운 파일을 만들고 작업했다면
그 상태에서 git status
를 확인하고,
기존에 했던 방법으로 진행해주시면 됩니다.
만약 로컬의 기존 git clone
디렉토리에서
작업을 한 게 아니라면,
cp
해와서 동일한 방법으로 진행해주시면 됩니다.
여기서 중요하다고 생각되는 점은 git status
와,
git remote -v
, git log
와 같은 확인하는 기능들을 사용하셔서,
혼동이 없도록 하는 것 같습니다.
git pull
에 대해서 말씀해주셨는데,
이 명령어도 어떤 상황에서 쓰시려고 하시는지
구체적으로 말씀해주시면 좋을 것 같습니다!
업데이트된 저희 Repo의 파일을 제 로컬 디렉토리로 가지고 오려는데, git pull
동작이 안되어서 여쭤봤습니다. 답변 주신 참고해서 다시 한번 시도해보도록 할게요. 자세한 답변 감사합니다 !!
@jaehwan2
방금 말씀해주신대로라면, git pull
보다는 git clone
이 맞는 것 같습니다!
git pull
은 로컬 디렉토리,
즉 .git
이 붙어있는 상태의 로컬 디렉토리일 때,
변경했던 적이 있는데, 로컬에 반영이 되어있지 않을 때
사용하는 기능입니다.
제가 아는 협업 방법은 두 가지인데요,
한 가지는 단일 저장소에서 협업하는 것이고,
다른 한가지는 저희처럼 fork
해와서 협업하는 것입니다.
저희는 fork
해서 contributor 형태로, 기여
하는 것이죠.
그렇기에 저희가 pull-request 요청을 하는 저장소를
로컬로 가져오시려면,
git pull
보다는 git clone
이 적합하다고 생각됩니다.
✅ git clone
fork
한 본인의repository
를 git clone 하기ex.
✅ cp
본인의 작업물이 있는 위치에서 작업물을
git clone
한 디렉토리로 복사(cp)하기⚠️ 해당 주차 디렉토리로 넣기
ex. ➡️ 테스트를 위해 작업물이
test.txt
라고 가정하겠습니다.cf.
ls
→ 현재 디렉토리의 내용을 확인하는 명령어ls -al
→ 현재 디렉토리의 내용을 전부 리스트의 형태로 확인하는 명령어➡️ 반영 결과
✅ git status
clone
한 디렉토리에서 git 상태 확인(git status)하기✅ git add
github
에 올릴 작업물 스테이징(git add)하기만약
git status
로 확인했을 때, 본인이 복사해온 작업물만이 빨간 글씨로 떠있다면,git add *
명령어로 간단하게 스테이징해도 된다.cf.
git add *
→git status
에 빨간 글씨를 모두 스테이징하겠다는 의미➡️ git add 반영 결과 (git status로 확인)
⚠️ git add 를 잘못했을 때 ➡️ 스테이징되어있는 전체 파일을 취소 :
git reset
➡️ 특정 파일의 스테이징 취소 :git reset HEAD [작업물 이름]
(git status
했을 때, 빨간 글씨로 돌아간다.)✅ git commit
스테이징 되어있는 작업물에 커밋 메세지와 함께 커밋하기
성공적으로 커밋에 성공하면,
git status
로 확인했을 때,커밋이 몇 개 되었는지와 스테이징된 파일이 없다(working tree clean)고 나온다.
ex.
⚠️ git commit 를 잘못했을 때 ➡️ 스테이징되어있는 전체 파일을 취소 :
git reset HEAD^
(뒤의 꺽쇠의 갯수에 따라, 최신 커밋을 필요한만큼 순서대로 삭제할 수 있다.) ex.✅ git push
fork
한 본인의repository
에 올리기(git push)cf. 클론한
fork
했던 본인의repository
의 이름 origincf.
git log
- 지금까지의 깃의 기록을 알 수 있다. (q
를 누르면 닫을 수 있다.)✅ pull request 보내기