[xcode] 프로젝트에서 CocoaPods를 제거하는 방법?

프로젝트에서 CocoaPod를 제거하는 올바른 방법은 무엇입니까? CocoaPod 전체를 제거하고 싶습니다. 내 고객이 부과 한 일부 제한으로 인해 사용할 수 없습니다. xcworkspace 대신 하나의 xcodeproj가 필요합니다.



답변

프로젝트에서 CocoaPod를 제거 할 수 있지만 현재 CLI에 의해 자동화되지 않았습니다. 첫 번째로, 유일한 문제 xcworkspace는 사용할 수 없는 경우 작업 공간 은 아니지만 생성하는 플래그를 xcodeproj사용하여 CocoaPod를 s 와 함께 사용할 수 있습니다 . 그런 다음 이것을 메인에 하위 프로젝트로 추가 할 수 있습니다 .--no-integratePods.xcodeprojxcodeprojxcodeproj

모든 CocoaPods 통합을 정말로 제거하려면 몇 가지 작업을 수행해야합니다.

참고 잘못 수행 한 경우이 중 일부를 편집하면 기본 프로젝트가 중단 될 수 있습니다. 만일을 대비하여 프로젝트를 소스 제어로 확인하는 것이 좋습니다. 또한 이러한 지침은 CocoaPods 버전에 대한 것이며 0.39.0새 버전으로 변경 될 수 있습니다.

  1. 독립형 파일 Podfile Podfile.lockPods디렉토리 삭제
  2. 생성 된 삭제 xcworkspace
  3. 당신 열고 xcodeproj, 파일에 대한 참조를 제거 Pods.xcconfig하고 libPods.a합니다 (의 Frameworks그룹)
  4. 당신의 아래에서 Build Phases삭제 Copy Pods Resources, Embed Pods FrameworksCheck Pods Manifest.lock단계.
  5. 이것은 명백해 보이지만 타사 라이브러리를 다른 방법으로 통합하거나 코드에서 해당 라이브러리에 대한 참조를 제거해야합니다.

이러한 단계 후에는 xcodeprojCocoaPod를 통합하기 전에 존재 하는 단일 항목으로 설정해야합니다 . 내가 놓친 것이 있으면 알려 주시면 수정하겠습니다.

또한 항상 CocoaPods를 개선하는 방법에 대한 제안을 찾고 있으므로 문제가있는 경우 문제 추적기 에 제출하여 문제 를 해결하는 방법을 제안하십시오!

편집하다

의견에 Jack Wu가 제시 한 것처럼 타사 CocoaPods 플러그인이 있어이 단계를 자동화 할 수 있습니다. 여기 에서 찾을 수 있습니다 . 이 플러그인은 타사 플러그인이므로 CocoaPods가 업데이트 될 때 항상 업데이트되는 것은 아닙니다. 또한 CocoaPods 핵심 팀원이 작성하므로 문제는 문제가되지 않습니다.


답변

pod deintegratepod clean프로젝트 / REPO에서 CocoaPod을 제거하는 명령이 지정되어 있습니다.

다음은 전체 명령 세트입니다.

$ sudo gem install cocoapods-deintegrate cocoapods-clean
$ pod deintegrate
$ pod cache clean --all
$ rm Podfile

원래 솔루션은 여기에서 찾을 수 있습니다 : https://medium.com/@icanhazedit/remove-uninstall-deintegrate-cocoapods-from-your-xcode-ios-project-c4621cee5e42#.wd00fj2e5

CocoaPod 설명서 pod deintegrate: https://guides.cocoapods.org/terminal/commands.html#pod_deintegrate


답변

프로젝트에서 포드를 완전히 제거하려면 먼저 두 가지를 설치해야합니다. 다음은 다음과 같습니다 (시스템에 이미 코코아 포드가 설치되어 있다고 가정).

  1. Cocoapods-Deintegrate 플러그인
  2. Cocoapods-Clean 플러그인

설치

  1. Cocoapods-Deintegrate 플러그인

    터미널에서 다음 명령을 사용하여 설치하십시오.

    sudo gem install cocoapods-deintegrate
  2. Cocoapods-Clean 플러그인

    터미널에서 다음 명령을 사용하여 설치하십시오.

    sudo gem install cocoapods-clean

용법

우선 다음과 같은 일반적인 명령을 사용하여 프로젝트 폴더로 이동하십시오.

cd (path of the project) //Remove the braces after cd

이제이 두 플러그인을 사용하여 다음과 같이 완전히 제거하십시오.

  1. Cocoapods-Deintegrate 플러그인

    터미널에서 다음 명령을 사용하여 프로젝트에서 포드를 분리하십시오.

     pod deintegrate

깍지 포드

  1. Cocoapods-Clean 플러그인

    프로젝트에서 포드를 분리 한 후 터미널에서 다음 명령을 사용하여 완전히 청소하십시오.

     pod clean

    위 작업을 완료 한 후에도 여전히 Podfile이 프로젝트 디렉토리에 남아 있어야합니다. 수동으로 삭제하거나 터미널에서 다음 명령을 사용하십시오.

     rm Podfile

그게 다야 … 이제 프로젝트에 포드가 없어야합니다.

시스템에서 Cocoapod 제거

어떤 방법 으로든 터미널에서 다음 명령을 사용하여 시스템에서 코카 포드를 제거 / 제거하십시오.

sudo gem uninstall cocoapods

코카 포드를 자동으로 제거합니다.

감사. 이것이 도움이 되었기를 바랍니다.


답변

더 쉬운 방법이 있다고 생각합니다.

허용 된 답변으로 편집 한 것처럼 이제 타사 플러그인 cocoapods-deintegrate를 사용할 수 있으며 CocoaPods 핵심 팀 구성원이 만들었 기 때문에 신뢰할 수 있습니다.

그러나 여전히 일부 파일이 남아 있습니다.

Podfile
Podfile.lock
Workspace

프로젝트에서 수동으로 제거 할 수 있지만 cocoapods-clean 덕분에 청소를 도와주는 다른 도구도 있습니다 .

마지막으로, 제거 작업이 아직 완료 cocoapods-clean되지 않았습니다.를 정리하지 말고 Podfile다음을 실행하십시오.

rm Podfile

건배!

제거하기 전에 프로젝트를 백업해야합니다!


답변


pod deintegrate

이 cmd 후에 프로젝트에 Cocoapod의 흔적이 남지 않았습니다.

그러나 포드 프로젝트를 참조하는 작업 영역은 여전히 ​​남아 있으므로 수동으로 3 개 미만의 파일을 제거해야합니다.

xx.xcworkspace
Podifle
Podfile.lock

그런 다음 프로젝트를 다시 사용할 수 있습니다.

즐기세요!

CocoaPod 버전 = 1.2.0 테스트


답변

나는이 모든 답변을 시도했지만 여전히 빌드되지는 않았지만 결국 시도했습니다.

pod deintegrate
pod install

실제로 효과가있었습니다!

적어도 내 경우에는 빌드 단계에서 모든 포드 스크립트를 제거하고 다시 작동시켜야합니다.


답변

Keith의 답변은 훌륭합니다. Cocoapods 0.36Dynamic Frameworks 를 지원하기 시작 했기 때문에 지적하고 싶습니다. ‘use_frameworks!’를 사용하는 경우 싶습니다. ‘Podfile’에서 Cocoapod를 제거하려면 다음을 수행해야합니다.

  • 아래에서 Build Phases삭제 Embed Pods Frameworks단계입니다.