Git의 사용이유를 잘설명해놓은 댓글
만약 프로그래밍을 하신다면, 실제 배포 되어 사용중인 코드가 있을거고, 기능 개발중인 코드가 있을거예요. 아직 한창 개발중인 프로그램인데 갑자기 고객사로부터 이슈가 도착해서 급하게 수정을 들어가야 하는 경우, 내가 지금 개발하고있는 신기능이 포함된 코드에서 수정을 하게 되면 실제 배포할 때 미완성 된 신기능도 같이 섞여서 들어가게 될 겁니다.
그렇기 때문에 현재 배포 되어있는 버전에서 브랜치를 파생해서 개발 브랜치를 만들어 신기술을 해당 브랜치 내에서 작업하면, 급하게 버그 요청이 들어왔을 때 마스터 브랜치에서 다시 이슈 픽스 브랜치를 파생해서 해당 브랜치에서만 버그를 고쳐서 병합을 진행하면 현재 내가 개발하고있는 신기술은 개발 브랜치에 온전히 있는 상태에서 배포 된 프로그램의 이슈만 고치는 작업을 진행할 수 있습니다.
출처 : https://wayhome25.github.io/git/2017/07/08/git-first-pull-request-story/
github에 레파지토리 생성
https://github.com/ 에 접속 -> 로그인 레파지토리생성
로컬에 깃허브 레파지토리로 와 동일시 할 폴더설정
$ git init
$ git remote add origin https://github.com/git_id/repository_name.git
$ git add .
$ git commit -m "tag story"
$ git push . --all
git branch 생성
$ git branch issue1
$ git branch [testbranchname]
$ git add [변경내용]
$ git add test.txt
## 전체 변경사항 을 적용하고싶을때는
$ git add .
$ git commit -m "test"
$ git commit -m ["설명"]
git 을 main branch로 전환
$ git checkout main
다른 branch 를 main branch에 적용
$ git merge issue1
$ git merge [testbranchname]
git branch 삭제
$ gir branch -d issue1
현재 로컬에서의 상태가 깃허브보다 이전일때
현재 로컬에서의 업로드 상태가 깃허브보다 이전일때
$ git pull origin main
명령어로 pull로 댕기고 수정하는것이 좋다.
git rebase??
$ git rebase main
git log 확인
$ git log --graph
추가된 원격저장소의 목록 확인
$ git remote
로컬 브런치 삭제
$ git branch -d master
[브런치명]
커밋안한 브런치이어도 삭제하고싶으면
$ git branch -D [브런치이름]
$ git branch -D master
원격저장소 브런치 삭제
$ git push origin --delete [브런치 명]
$ git push origin --delete master
'fatal: 관계 없는 커밋 내역의 병합을 거부합니다' 오류 발생시에
$ git fetch origin/main
원하는 파일만 땡겨오기
$ git checkout origin/master -- path/filename
로컬에서 브런치 변경
$ git checkout master
[브런치명]
현재 브런치명 변경(로컬)
$ git branch -m main master
[브런치명]
원격 저장소 설정 현황 확인방법
$ git remote -v
$ git push origin main --force
--force 옵션을 실행하게 되면 기존 repository의 commit 내역은 모두 삭제되고, 현재 내가 작업한 commit 내역들만 남기 때문에 유의해야 한다.
출처 : https://developerntraveler.tistory.com/74
$ git add .
현재 폴더 전체 반영 → 이후 커밋해야함
$ git commit -m "frist" —all
$ git commit -m [commit name] —all
add 한 내용 커밋하기 → 이후 push 필요
$ git push —all
현재 로컬의 내용이 맞지만 push가 안될때는
$ git push -u origin +main
git repo 변경
$ git remote set-url origin https://github.com/jsadoifjiodsa.git
중구난방으로 보이는데로 쓴거라 맞지않은 내용이 있을수 있습니다. 혹시 보시면 댓글부탁드립니다.
솔직히
https://backlog.com/git-tutorial/kr/
여기서 확인하시면 편합니다.