Xcode에서 bitbucket의 remote server로 커밋 올리기
안녕하세요. 개발자 드리머즈입니다.
근래에 bitbucket를 알게되어 열심히 사용하고 있습니다. 안드로이드는 이미 remote 서버를 구축해서 사용 중입니다. iOS에서도 동일한 작업을 해봤습니다.
안드로이드 스튜디오 bitbucket 사용 가이드
안드로이드 Bitbucket를 이용한 소스 관리(형상관리) (1/3)
안드로이드 Bitbucket를 이용한 소스 관리(형상관리) (2/3)
안드로이드 Bitbucket를 이용한 소스 관리(형상관리) (3/3)
Xcode bitbucket 사용 가이드
Xcode bitbucket 사용법이라고 했지만 생각해보면 bitbucket는 외부 서버(remote server) 역할을 할 뿐이고 맥OS에서는 터미널에서 기본적으로 git을 사용할 수가 있어서 git을 이미 사용하셨던 분들이라면 어렵지 않습니다.
bitbucket에 접속하여 empty repository를 만듭니다.
위 사진의 빨간색 네모 영역의 코드가 핵심입니다.
아래에서 좀 더 자세히 보겠습니다.
맥OS에서 터미널을 실행한 다음에
소스가 있는 경로로 이동합니다.
그 다음에 bitbucket 사이트에 나와있던
1 | git remote add origin https://xxxx@bitbucket.org/xxxx/xxxxxxxx.git | cs |
위와 같은 형식의 코드를 입력합니다.
소스가 업로드 될 외부 서버를 설정하고 이 서버를 origin이라고 명명하는 코드입니다.
코드 실행이 완료되어도 아무런 변화가 없습니다.
remote server가 잘 설정됐는지 확인하기 위해
1 | cat .git/config | cs |
명령어를 입력해서 git 설정을 확인합니다.
잘 된 것 같습니다.
local에 있던 commit을 외부 서버에 올리기 위해
1 | git push -u origin master | cs |
명령어를 입력합니다.
그 다음에 비밀번호를 입력하면 됩니다.
비밀번호 타이핑이 되는 동안에 화면에 아무런 변화가 없으니 주의하세요.
비밀번호 입력 시 ****와 같은 변화가 없다는 말입니다.
비밀번호를 잘 입력하고 엔터를 누르면
commit이 서버로 올라갑니다.
*git push -u origin master에서 -u를 사용하는 이유?
-u 옵션을 사용하면 깃 설정파일에 위의 코드가 추가된다고 합니다.
이 코드가 추가되면
local의 master브랜치가 origin의 master브랜치로 연결된다고 합니다.
그래서 local의 master브랜치에서 git push만 입력해도 origin의 master브랜치로 올라갑니다.
비슷하게 git pull만 입력해도 origin의 master를 가져와 local에 merge한다고 합니다.
refs는 reference의 약자인데 아래의 링크에 좋은 설명이 있으니 참고 바랍니다.
https://git-scm.com/book/ko/v2/Git%EC%9D%98-%EB%82%B4%EB%B6%80-Git-Refs
bitbucket에 접속해서 확인해보면 커밋들이 잘 올라가 있습니다.
생성한 태그들을 모두 서버로 올리기 위해
1 | git push --tags | cs |
명령어를 입력합니다.
다시 bitbucket에 접속하면 없던 태그가 추가된 것을 확인할 수 있습니다.
참고
1 | git tag | cs |
태그 생성 하는 법:
1 | git tag '생성할 태그명' | cs |
git으로 관리되지 않는(untracked) 파일과 폴더 삭제하는 법:
git clean -fd
(f는 force를 의미하고 d는 directory도 삭제하는 것을 의미함)
댓글 영역