Contributor : 한 프로젝트의 커밋에 관여하는 모든 사람을
Collaborator : 프로젝트의 공동 책임자
git으로 관리되고 있는 프로젝트에 contribute 하고 싶다면
위의 Fork 버튼을 눌러주면 된다
내 계정으로 이 프로젝트를 복사해서 가지고 올 수 있다
복사해온 프로젝트를 clone 해서 내 컴퓨터로 복사해오는 작업이 필요하다
git clone 명령어 뒤에 Repository 주소를 입력하면 해당 Repository를 내 컴퓨터(Local Repository)로 가져와서 작업할 수 있다
예전에 윈도우를 사용할때 깃헙에 올려두었던
생활코딩을 들으며 완성했던 웹페이지를 가져와보자
git clone <복사한 ssh>
git clone 명령어가 실행되면 html에 복제한다는 내용이 나오고
없었던 html 파일이 생긴 것을 볼수있다
파일을 가져와서 어떤 기능을 수정했을때 commit으로 변경 사항의 저장 기록을 남겨두는게 좋다
commit을 하기 위해서 먼저 현재 Local Repository에 변경된 파일들이 어떤 것이 있는지 확인해 보자
git status 명령어를 통해 staging area와 untracked files 목록에 어떤 것들이 있는지 확인할 수 있다
untracked files (git의 트래킹 되고 있지 않은 파일들) 목록에는 style.css라는 파일이 있고 이 파일을 Commit 하기 위해서는 git add 명령어를 통해서 commit 할 수 있다고 나온다
1 . git add <파일명>
: add는 파일을 commit 할 수 있는 상태로 만들어 줍니다.
git add .
: 모든 파일을 한번에 추가 할 수 있다
git add <파일명> 으로 staging area 에 올려준뒤
2. git commit -m'커밋 메세지'
로 커밋한 내용의 코멘트를 작성 할 수 있다
git restore <파일명>
아직 커밋되지 않은 local repository의 변경 사항을 취소 할 수 있다
Local Repository에 저장되어 있는 commit 기록들을 내 Remote Repository 에 업로드해 줘야 한다
git push <origin><branch>
이때 branch란 협업을 하다보면 동시에 작업할수도 있기 때문에
branch 라는 각자의 workspace를 만든다고 생각하면 된다
저장소를 처음 만들면 git은 master이라는 이름의 branch를 만들어주는데
이 저장소는 main으로 지정되어 있다
git branch -a
명령어를 실행하면 저장소의 이름을 보여준다
git push <origin><main>
git push 해서 올려준 뒤 깃헙으로 가면
파일이 코멘트와 함께 잘 올라간 것을 볼 수 있다
그전에 터미널에서 커밋이 잘 기록되었는지 보고싶다면
git log
커밋했던 내용들이 나오고 이 터미널창은 q를 눌러서 끌 수 있다
git reset --soft HEAD^ : 가장 최신 커밋 취소 ^^^ 커밋의 개수를 정해서 취소할 수 있다
git reset --hard : 최근 작업의 내용을 버리고 전의 상태로 초기화할때 사용한다
get reflog 를 실행하면 예전에 실행했던 커밋들의 순서가 나온다
몇번째 HEAD로 이동할지 확인하고 git reset --hard HEAD@{1} 라고 하면 그 시간으로 돌아갈 수 있다(복구하고 싶을때 사용한다)
마지막으로 수정했던 내용들을 Pull Request를 보내면 내가 수정했던 내용을
간단하게 요약해서 알려준다
같이 작업하는 동료의 리뷰도 받을 수 있고 기존 작업에 병합 할 수도 있다