기존 Xcode 프로젝트와 함께 Git 사용


113

내 프로젝트 워크 플로에서 git을 사용하는 방법을 알아 내려고하는데 저장소에 넣을 기존 Xcode 프로젝트가 있습니다. 오거나이저에서 저장소가 올바르게 설정된 것 같지만 소스 제어 메뉴가 회색으로 표시됩니다.
분명히 새 프로젝트를 시작하면 쉽게 할 수 있지만 스냅 샷과 모든 것이 포함 된 기존 프로젝트를 어떻게 가져 옵니까?

Xcode 4와 git 1.7.4를 사용하고 있습니다.

또한 git 구성 및 모범 사례에 대한 좋은 연습이 있다면 좋을 것입니다. 나는 게임에 조금 늦었으므로 속도를 높일 수있는 모든 것이 멋질 것입니다.

답변:


169

GitHub에는 help.github.com 에서 아주 좋은 git 자습서가 있습니다 .

저장소의 초기 설정을 수행하려면 터미널 창을 열고 프로젝트 디렉토리에 대한 CD를 엽니 다. 일단 거기에 입력

git init
git add .
git commit -m "Initial commit"

Xcode를 다시 시작하십시오. 이제 저장소가 설정되고 xcode 4에서 관리 할 수 ​​있습니다.


4
추적 된 파일로 모든 빌드 디렉토리 및 기타 쓰레기를 추가하지 않도록 .gitignore 파일을 추가하는 방법은 어디에 있습니까?
Fraggle

7
이 메서드는 .xcuserstate 및 기타 메타 데이터를 버전 제어해서는 안되는 저장소에 추가합니다. 먼저 프로젝트 폴더에 .gitignore를 만들고 "git add."를 실행하기 전에 해당 메타 데이터 파일 형식을 나열하는 것이 좋습니다.
kakyo

나를 위해 전혀 작동하지 않았습니다. Xcode는이를 저장소로 인식하지 않습니다.
Jonny

저는 Xcode 11을 사용하고 있습니다. 소스 제어, 커밋을 수행 한 다음 첫 번째 커밋을 수행하여 기존 프로젝트에 로컬 git 저장소를 추가 할 수있었습니다. 즉 .git 폴더 등을합니다 (필요 없음 생성 git init, git add .git commit -m.)
제프

103

Xcode 7 (및 8)

새 프로젝트를 시작하는 경우 설정 중에 Create Git repository를 확인 하면됩니다. (그런 다음 아래 커밋 부분으로 건너 뜁니다.)

여기에 이미지 설명 입력

그러나 기존 프로젝트를 작업, 이동 엑스 코드 > 기본 설정 ... > 소스 제어 및 확인 사용 소스 제어 상자를.

여기에 이미지 설명 입력

그런 다음 기본 소스 제어 메뉴에서 작업 복사본 생성 ...을 선택합니다 .

여기에 이미지 설명 입력

( "당신이 누구인지 알려주세요"오류가 발생하면 이 질문 / 답변 또는 링크 된 다른 질문 중 하나를 참조하십시오 .)

완료되면 Xcode 프로젝트 파일 중 하나를 변경하십시오. 그런 다음 소스 제어 메뉴 로 돌아가서 커밋을 선택합니다 .

여기에 이미지 설명 입력

커밋 메시지를 작성하고 커밋 버튼을 클릭 합니다. (커밋 버튼이 비활성화 된 경우 프로젝트를 약간 변경하고 다시 시도하십시오.)

여기에 이미지 설명 입력

Github에서 로그인 하고 새 저장소를 만듭니다 .

여기에 이미지 설명 입력

원하는대로 호출하되 README, .gitignore 또는 라이선스를 아직 추가 하지 마세요 . 나중에 추가 할 수 있습니다. 지금 그렇게하면 동기화가 더 어려워집니다.

여기에 이미지 설명 입력

저장소에 링크를 복사하십시오.

여기에 이미지 설명 입력

이동 소스 제어 > 지사 이름 > 을 구성합니다 .

여기에 이미지 설명 입력

클릭 원격지] 탭> " + >"버튼을 ... 원격 추가 .

여기에 이미지 설명 입력

github 저장소 이름을 입력하고 주소에 붙여 넣습니다.

여기에 이미지 설명 입력

리모컨을 추가 한 후 소스 제어 메뉴 에서 푸시 를 클릭하십시오 . github 사용자 이름과 비밀번호를 입력하십시오. 그게 다야. 이제 프로젝트를 github에 복사해야합니다.

(처음에 내 사용자 이름과 비밀번호를 수락하는 데 문제가있었습니다.이 경우 Xcode > 환경 설정 ... > 계정 > 새 저장소로 이동하십시오 . 여기에 사용자 이름과 비밀번호를 입력 한 다음 푸시를 다시 시도 하십시오.)

여기에 이미지 설명 입력

README 및 기타 파일을 추가 할 수 있지만 웹에서 수행하는 경우 다른 변경 사항을 적용하기 전에 Source Control > Pull in Xcode를 수행해야합니다.

이제 Xcode에서 변경할 때마다 CommitPush 만하면 됩니다.

나는이 방법을 주로 여기서 배웠다 .

또한보십시오


이것은 지금까지 가장 쉬운 해결책입니다. xcode> preferences> accounts> add repo에 repo를 추가 할 때 의미하는 바를 말해 줄 수 있습니까?
AceN 2015 년

@AceNeerav,이를 통해 매번 입력 할 필요가 없도록 보유한 다른 리포지토리에 대한 자격 증명을 저장할 수 있습니다. 자세한 내용은 이 문서 를 참조하십시오.
Suragch 2015 년

훌륭한 솔루션입니다. 팁 : Bitbucket은 소규모 프로젝트를위한 github의 무료 대안입니다. 프로젝트가 커지면 비용을 지불합니다.
steve-o

1
@ steve-o, GitLab 도 좋은 대안입니다. 그것은 무료로 개인 저장소를 허용합니다. 위의 답변과 유사하게 사용하도록 Xcode를 구성 할 수있었습니다.
Suragch 2016

많은 다시 한번 나 자신 감사를 할 수 URL 응답 메신저를 따라 감사
딜립 Tiwari 보낸 사람을

44

여러 프로젝트에서이 작업을 수행하는 과정을 밟았는데 몇 가지 문제가 발생했습니다. 다음은이 페이지 / 사이트의 다른 답변에서 대부분 모아진 내 프로세스입니다. 여기서 순서는 매우 중요합니다

  1. 터미널을 열고 .xcodeproj 파일이 포함 된 디렉토리로 cd
  2. 자식 초기화
  3. 파인더에서 새로 생성 된 .git 폴더 (.xcodeproj 파일과 동일한 디렉토리에 있음)를 입력합니다. 정보 / 제외를 찾고, .DS_Store 및 xcuserdata / 행을 열고 추가하십시오.
  4. 이것이 필요한지 확실하지 않지만 터미널을 사용하여 .gitignore 파일에 대한 cp info / exclude를 사용했습니다.
  5. git add.
  6. git commit -m "초기 커밋"
  7. 이제 실제로 저장소를 볼 수 있도록 XCode를 가져옵니다. 프로젝트 구성 도우미에서 먼저 프로젝트 탭에서 프로젝트를 삭제해야합니다. 그런 다음 프로젝트를 다시 열어 다시 가져 오십시오. 방금 생성 된 GIT 저장소를 감지합니다.
  8. Organizer의 리포지토리 탭에서 마스터 브랜치에서 분기하여 작업중인 버전으로 전환합니다.

바라건대 이것은 너무 중복되지 않고 누군가에게 도움이되기를 바랍니다. 지금 단순 해 보이는 것은 기존 프로젝트를 통해 GIT를 처음 접하는 사람에게는 확실히 도전이었습니다.


2
경험을 공유해 주셔서 감사합니다! 단계별로 훌륭합니다.
AndyD273

단계별로 훌륭하며 아직 git에 익숙하지 않은 나와 같은 사람에게 매우 유용합니다.
Nicolas Miari 2013

1
나에게 4.6.2에서는 7 단계가 필요하지 않았습니다. 감사!
cloudsurfin

이것이 얼마나 도움이되었는지 설명 할 수 없습니다! 7 단계는 최신 Xcode에서도 도움이되었습니다!
Zephyer 2013-07-23

위의 단계와 다른 게시물 및 svn 경험을 따라 배웠습니다. Xcode 용 .gitignore 파일을 만들 수 있습니다. 무시할 항목이 GitHub github.com/github/gitignore/blob/master/Global/Xcode.gitignore
Bhavesh


1

XCODE 7이 기존 GIT 저장소와 연결되지 않는 경우. 다음 시도

xcrun git config --global user.email your@email.com
xcrun git config --global user.name "your name"

0

Note:Specially for Xcode 11

터미널을 사용하여 프로젝트 디렉토리에 CD

자식 초기화

git add.

git commit -m "초기 커밋"

이 후 Xcode를 다시 시작하고 Source Control Navigator를 선택한 다음 마스터를 선택하고 마우스 오른쪽 버튼을 클릭 한 다음 "Create Remote"옵션을 선택합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.