git bash를 이용해 git과 github를 다뤄서 협업하기!!
git은 체계적 개발과 프로그램 배포를 도와주는 형상 관리 도구, 또는 버전 관리 시스템입니다. 프로젝트의 개발 단계에서 소스 코드의 버전을 효과적으로 관리하고, 동시에 협업을 할 수 있도록 도와주는 도구입니다.
대표적인 git 저장소이며, Git 호스팅 기능 덕분에 GitHub는 자유 소프트웨어와 오픈소스의 성지로 떠올랐다
pwd //현재 경로//
ls //현위치 파일 목록//
cd 폴더이름 //폴더 이동//
cd .. //상위폴더로 이동//
git config --global user.name "user_name" //이름설정//
git config --global user.email "user_email" //이메일 설정//
git config --list //설정 정보 확인//
git clone 레파지토리ssh주소 //레파지토리 클론 폴더 생성//
echo "# 레파지토리이름" >> README.md // 리드미파일 생성(쉽게말하면 프로젝트 사용설명서)
github 레파지토리 생성후 url을 통해 나의 로컬 저장소와 연동가능
저장소에 업로드할 파일 생성
git init //초기화//
(작업하고자하는 폴더에서 마우스 우클릭으로 bash를 실행하면 cd를 통해 이동하지 않아도 됨)
git add . //생성 파일 전체 워킹트리에 추가 '.'점 대신에 파일명 입력하면 특정파일만 add//
git commit -m "커밋 메세지" //추가한 파일 커밋, 커밋 메세지는 필수는 아니지만 필요//
git status //깃 상태 확인(자주 확인하자)//
git branch -M main //메인 브런치명을 변경 할때 사용//
(메인을 브런치를 나두고자 할 때)
->git branch 브런치명 //새 브런치생성
->git checkout 브런치명 //해당 브런치로 이동//
git remote add origin https://저장소url.git //저장소 연동//
(이미 다른 저장소에 연동이 되어 있으면)
->git remote remove origin //저장소 연동 해제//
git remote -v //연결 확인//
git push -u origin 브런치명 //해당브런치로 깃허브에 업로드//
!!'커밋 메시지'는 자유롭게 입력할 수 있지만, 가급적 ‘무엇을’, ‘왜’ 했는지 알 수 있도록 작성하는 것이 좋음
git clone ssh || HTTPS //해당 주소 파일 복사해옴//
git remote -v //연결 확인//
(이미 다른 저장소에 연동이 되어 있으면)
->git remote remove origin //저장소 연동 해제//
git remote add origin ssh || HTTPS //저장소 연동//
git pull origin 브런치명 // 해당 브런치의 파일 pull 완료 //
git clone ssh || HTTPS //해당 주소 파일 복사해옴//
git pull origin 브랜치명
git branch 생성브랜치명
git checkout 브랜치명
git commit -m "커밋메세지"
git push -u origin 브랜치명
메인으로 merge 할 때는 push(git) -> request(hub) => confirm(hub)
메인이 아닌 브런치끼리 merge 할 때는,
git checkout 내브런치명 // 작업할 브런치주인이 하는게 편하다.
git merge oirgin/브런치명(땡겨올 애) // 기준이 되는 브런치에 먼저 체크아웃 한다.
에러가 났을 때 내가 아는 몇 가지 방법만 정리!!
커밋이 안될 때는 앞 서 적어놓은 '세팅' 을 다시 한 번 실행한다
푸쉬에서 막힌다면 clone부터 다시 해보자 ( HTTPS보다는 SSH가 오류가 적음 )
그래도 안된다면 클론 전에 토큰먼저 새로 받아 보자!!
(깃허브 settings -> developer settings -> personal access tokens -> tokens(classic)
기존에 있던 토큰 삭제후 재생성 ( 체크 목록중에 repo만 체크하고 생성 )
windows 자격증명으로 들어가 github 관련 목록 삭제후 진행해주는 것도 좋다
( 이런 작업 후에는 여유가 된다면 재부팅 해주는 것도 좋음 )
git pull origin dev
git pull origin dev
// 내 코드를 올리기 전에 최신화 해주는 작업 (내 코드도 함께 적용됨)git push -u origin dev
// 최신화 된 코드를 올려준다git - github 협업하기
-- 작업 전 ( IDE )
git clone url // 클론작업
git branch 이름 // 작업할 브랜치 생성
git checkout 이름 // 작업할 브랜치로 이동
git pull origin dev // 받아올 브랜치(최신)
git push -u origin 이름 // 깃허브에 생성 & 새로운 브랜치 로그( 해도되고 안해도됨 )
-- 작업 후 ( IDE )
git add . // 커밋할 파일 저장
git commit -m "asd123" // 커밋 + 커밋메세지
git push // ( or git push -u dev ) 푸쉬작업
-- 작업 후 ( 깃허브 웹페이지에서 작업 )
pr -> 오류수정 merge ->컨펌 -> 브랜치 삭제(선택)
삭제했다면.
-- 새로운 작업 ( IDE )
git branch -d 이름 // 깃허브에서 연동 브랜치는 삭제했으니 로컬 브랜치 삭제
git branch 이름 // 작업할 브랜치 생성 ( git branch 이름 dev ) 하면 이름에 dev가 바로 풀받아짐
git checkoup 이름 // 작업할 브랜치로 이동
git pull origin dev // 최신 데브 풀 받기
https://velog.io/@jhh7929/TIL-221117 // git 참고 블로그
나는 소스트리, 깃데스크탑을 잘 다룰 줄 모르지만 git bash만큼은 완벽하게 잘 다루려고 노력중이다.... git bash가 더 재밌고 손에 잘 익는 것 같아서 다행이다
깃은 잘쓰면 진짜 재밌는것같아요 ㅎㅎ