Git을 처음 접해본다면
git의 사용법 및 각 명령어에 대해 이해할 수 있는 곳 ->
https://backlog.com/git-tutorial/kr/
git의 flow를 실습해볼 수 있는 사이트 ->
https://learngitbranching.js.org/?locale=ko
Github에 Repository 생성 tip!
readme 와 ignore 파일은 그냥 체크체크 해서 생성해주자
불필요하면 나중에 삭제 해주면 되지만
새로 생성해서 추가해주려면 귀찮다 :)
Github에 프로젝트 업로드
- 용량 초과 예방
- .gitignore 파일에 'Pods/' 추가
- 자동으로 git push 시 코코아팟 파일은 untrack 하여 용량 초과 에러 발생 가능성이 줄어든다.
- 코코아팟을 사용하는 경우 업로드 할 때는 제외 해주자
- xcode에서 변경된 내역은만약, 변경 사항을 되돌리고 싶으면 이 파란색 바를 클릭하거나 파일 마우스 우클릭하면 source control의 discard change 눌러주기
- 코드 라인 왼쪽에 파란색 바가 생기고 파일명 우측에 M 이라는 상태가 표시된다.
branch 나눠주기
1.git branch 브렌치명
현재 branch(main) 에서 생성한 브렌치(new)가 main의 작업 라인과 동일한 선상에 생성이 된다
2.git checkout new이때 여전히 main의 라인을 공유한다.
new에서 작업을 해준 후 commit - push를 진행해준다.
3. git checkout main
main에서 작업을 해준 후 commit - push를 진행해준다.
4. 이제 main과 new의 작업 내용이 전혀 달라졌다.
main 과 new에 대한 작업라인이 분리되어 분명하게 작업 내용이 다른 것을 볼 수 있다.
커밋메세지 변경
- 직전 commit
git commit --amend
- 이미 push한 commit
1) 수정할 커밋 위치
git rebase HEAD~1 -i
'HEAD~1'은 바로 직전에 push한 commit을 가리긴다.
따라서, 수정하려는 commit이 몇 번째 전인지 보고 HEAD뒤에 알맞게 넣어주면 되겠다.
2) 에디터 창이 나타나고
여기에서 수정하려는 메세지의 pick을 reword로 수정 후
esc -> :wq!
3) 이제 메세지를 수정할 에디터 창이 나타남
메세지를 수정 후
esc -> :wq!
4) 수정한 내역 push
git push origin main --force
gitignore가 안먹힐 때
원격에 있는 깃에 ignore한 파일 또는 폴더가 이미 commit/push 되어 있다면 ignore 되어 있다고 해도 계속 추적이 된다.
따라서 해당 파일 및 폴더를 원격에서 제거 후 진행 해야 한다.
git rm -r 파일 및 폴더명 // 원격, 로컬 저장소에 있는 파일 및 폴더 제거
git rm -r --cached 파일 및 폴더명 // 원격에 있는 파일 똔느 폴더만 제거(로컬에만 남는다)
git commit -m " 커밋메세지 "
git push
참고:
https://stackoverflow.com/questions/57667305/adding-git-ignore-for-xcode-pods-folder-does-not-work
https://tyrionlife.tistory.com/186
↓(down arrow)
원격과 로컬의 작업이 다를 때 xcode에서 보여주는 상태이다.
참고:
나의 경우는 레포지토리를 clone 해왔는데
로컬의 파일디렉토리에는 존재하는 파일이 xcode에는 보이지 않았다
그래서 직접 파일을 xcode로 끌어다 놓고 copy items if needed로 파일을 추가해준 후 커밋 푸시를 진행하니 해결이 되었다.
이는 원격과 로컬의 project파일의 차이를 맞춰주는 작업이라 원격에서도 실제 수정되는 파일은 'project.pbxproj' 이 프로젝트 파일 하나이다!
내가 생성한 branch에서 push하기
myBranch를 바라보는 상태에서 작업한 내용을 add -> commit 후
git push 원격메인브랜치 내브랜치
->
git push origin myBranch
내가 생성한 branch를 main으로 pull request, merge
myBranch에서 push가 완료 후 Github 레포 메인 화면으로 가보면
pull request와 merge를 할 수 있도록 알림바가 생긴다.
초록색 버튼을 눌러서 상세 화면으로 진입!
main <- myBranch로 pull request가 맞는지 확인하고
내용을 입력한 뒤 초록버튼!
충돌이 없다면 바로 merge가 가능하다고 표시 될것이다.
merge pull request버튼을 눌러 main으로 mybranch merge까지 완료해준다.
현재 브랜치를 main으로 옮기고 pull 해주면 끝.
'지식인' 카테고리의 다른 글
ETag (0) | 2023.09.19 |
---|---|
클린아키텍처 (0) | 2023.09.14 |
하나의 macOS에서 여러 Github 사용 (0) | 2022.08.05 |
Locale identifier (0) | 2022.03.22 |
용어 사전 (0) | 2021.12.15 |
댓글