Xcode 8 - Thiếu cảnh báo tệp


127

Kể từ khi nâng cấp lên Xcode 8 bằng Swift 2.3, tôi có một số cảnh báo về các tệp bị thiếu. Chúng đều liên quan đến các pod mà tôi đang sử dụng.

Các tập tin bị thiếu là

*.xcscheme 
*.cpp
*.xcuserstate
*.swift

Các nhóm đang hiển thị các tệp bị thiếu là

  • Vương quốc (~ 38 trên 43)
  • TextFieldEffects (~ 3 trên 43)
  • BEMCheckBox (2 trên 43)

Làm thế nào để tôi khắc phục vấn đề này?


Bạn đã thử pod installchưa
Marc-Alexandre Bérubé

@ Marc-AlexandreBérubé vâng, tôi đã thử cài đặt pod vài lần. Đã xóa thư mục pod và thực hiện cài đặt khác.
Alan

Câu trả lời:


298

Đây chỉ là một lỗi Xcode. Nếu bạn xóa hoặc đổi tên tệp mà không thực hiện cam kết, Xcode sẽ thấy sự khác biệt giữa gitcam kết trước đó và trạng thái hiện tại của sự việc và báo cáo các cảnh báo này. Họ sẽ biến mất ngay sau khi bạn thực hiện git addviệc bao gồm xóa / đổi tên tệp.


25
Thêm các tệp vào chỉ mục ( git add) là đủ, không cần phải thực sự cam kết chúng (nhiều khả năng dự án chưa sẵn sàng để được cam kết ...)
djromero

@djromero Cảm ơn bạn đã theo dõi điều đó! Bạn có muốn tôi thêm nó vào câu trả lời của tôi?
matt

@matt chắc chắn, cứ thoải mái làm điều đó
djromero

một cam kết mới đã khắc phục vấn đề cho tôi.
MatterGoal

34
Đối với tôi, nó dễ dàng như vô hiệu hóa nhanh chóng và sau đó kích hoạt lại kiểm soát nguồn theo sở thích. Xcode> Pref> Source Control> bỏ chọn "enable control control" .... sau đó kích hoạt lại sau. Và gặp sự cố! Không còn!
BennyTheNerd

84

Nếu bạn không sử dụng kiểm soát nguồn xcode nhưng một số máy khách git khác (như cây nguồn hoặc thiết bị đầu cuối), bạn có thể vô hiệu hóa kiểm soát nguồn trong Xcode và các cảnh báo sẽ biến mất.

Xcode> Tùy chọn> Kiểm soát nguồn và bỏ chọn " Bật kiểm soát nguồn "


Điều này sau đó có loại bỏ so sánh song song cho cam kết cũ khỏi XCode không? Tôi đang giả sử như vậy ...
Byron Coetsee 9/12/2016

15

Tôi đã thử tất cả những thứ này (và nhiều thứ khác) nhưng không ai trong số chúng hoạt động. Sau nhiều giờ thử các bản sửa lỗi khác nhau, tôi thấy rằng quy trình sau đã hoạt động.

cd "project directory"
git add .

Bạn sẽ cần đóng XCode và mở lại hoặc các Cam kết trong tương lai có thể thất bại.

Hy vọng điều này sẽ giúp được ai đó.


Tuyệt vời. Dự án của tôi có một chút lộn xộn bằng cách cập nhật các nhóm và các cảnh báo đã trở nên quá nhiều ... Điều này đã sửa nó. Cảm ơn!
Colibri

8

Tôi giải quyết vấn đề đơn giản bằng cách này:

  1. Thêm thủ phạm vào dự án nhập mô tả hình ảnh ở đây

  2. Xóa tham chiếu nhập mô tả hình ảnh ở đây

Điều này làm sạch trạng thái nội bộ của XCode và thông báo biến mất.


Điều đó thực sự hoạt động. Giải pháp của @ matt đã hoạt động một lần trong một số trường hợp nhất định, nhưng tôi có một tệp khó chịu liên tục quay trở lại XCode và đây là cách duy nhất để thoát khỏi nó.
qwerty_so

7

Làm thế nào về committrong Source Control.

Trước tiên, bạn có thể phải hiển thị Nội dung gói "your project name".xcodeprojvà hiển thị Nội dung gói project.xcworkspacesau đó xóa xcuserdatathư mục.

Nếu bạn vẫn không thể cam kết vì Không thể liên lạc với sự cố ứng dụng trợ giúp thì trong thư mục dự án của bạn, hãy thử như sau:

xcrun git config user.name "Your Name"
xcrun git config user.email YourEmailAddress

* Hãy nhớ mở lại dự án để xem hiệu quả.


7

Bạn có thể giải quyết vấn đề bằng cách chọn tùy chọn "Thêm và xóa tệp" trong X-Code-> Preferences-> Source Control

Dưới đây là ảnh chụp màn hình của Preferences


7

Xcode 8 dường như thường bỏ lỡ git addcác tập tin bị xóa / liên quan. Để sửa lỗi, hãy nhấn Commit...từ Source Controlmenu của Xcode , đảm bảo kiểm tra các tệp này (được theo sau bởi dấu chấm than!), Sau đó cam kết thay đổi. Điều này sẽ xóa các cảnh báo.


5

Tôi đã gặp vấn đề này một vài lần và cuối cùng tôi đã có nó sau khi giải quyết vấn đề xấu xí! Tôi ngồi xuống và theo dõi nó cho đến khi tôi tìm thấy lý do cho nó và các tài liệu tham khảo được lưu trữ!

Như ai đó đã đề xuất, nó phải thực hiện với kiểm soát phiên bản, có và không, trong một số trường hợp, nó chắc chắn phải thực hiện với việc chọc vào các tệp trực tiếp bằng công cụ tìm hoặc bất cứ thứ gì (nhưng không phải từ XCode)

Đây là một sửa chữa nhanh chóng mà tiết kiệm rất nhiều rắc rối và lời thề!

Xóa tệp này: ./.xcworkspace/xcuserdata/.xcuserdatad/UserInterfaceState.xcuserstate

Và các lỗi biến mất!


Điều này hoạt động lúc đầu, nhưng các tập tin bị thiếu đã xuất hiện lại ngay sau đó.
Hackmodford

4

Tôi đã từng gặp vấn đề tương tự. Trong trường hợp của tôi, có một thư mục .git trong thư mục mẹ của dự án của tôi. Bằng cách xóa thư mục .git cha đó, các lỗi đã biến mất.


3

Trong trường hợp của tôi, Pods đã kiểm tra kho lưu trữ tạo ra vài trăm cảnh báo cho "các tệp bị thiếu". Đã sửa lỗi bằng cách xóa Pods khỏi repo:

git filter-branch --index-filter 'git rm --cached --ignore-unmatch Pods/*' --tag-name-filter cat -- --all

2

Tôi đã giải quyết vấn đề này bằng các bước sau:

  1. Xóa dữ liệu phái sinh

  2. Hủy các tập tin bị thiếu trong khi cam kết và sau đó thực hiện cam kết.

  3. Xây dựng sạch

  4. Đã giải quyết ..

Chúc mừng mã hóa .. :)


1

Tôi đã gặp phải vấn đề tương tự sau khi thêm ô CollectionView tùy chỉnh (CustomCollectionViewCell) trong dự án. Lỗi xảy ra như trên. Không cần phải xóa các tập tin thay vào đó chúng ta có thể.

Đổi tên tệp Thiếu cho tôi đó là "xCustomCollectionViewCell.xib".

Bây giờ lỗi đã biến mất.

Một lần nữa đổi tên cùng một tệp thành tên gốc "CustomCollectionViewCell.xib"


1

CÁi này đã sửa nó giúp tôi:

git reset HEAD <path-to-deleted-file-that-was-causing-the-Xcode-warning>

0

Tôi gặp vấn đề này trên Xcode 9.3

Giải pháp hiệu quả với tôi: Thêm một khoảng trắng trong tệp, lưu, sau đó đợi !trạng thái thay đổi Mvà xóa khoảng trắng, lưu.

Đáng buồn thay, với gần 100 tệp để đi qua, tôi đã xem lại bài đăng nàynhận xét này từ @BennyTheNerd để trả lời , đã giúp!

Đối với tôi, nó dễ dàng như vô hiệu hóa nhanh chóng và sau đó kích hoạt lại kiểm soát nguồn theo sở thích. Xcode> Pref> Source Control> bỏ chọn "enable control control" .... sau đó kích hoạt lại sau. Và gặp sự cố! Không còn! - BennyTheNerd ngày 16 tháng 1 năm 17 lúc 7:29

Ngoài ra, tôi đã có khá Xcode và sau đó mở cùng một dự án và sau đó kích hoạt lại kiểm soát nguồn thông qua các tùy chọn.

Hi vọng điêu nay co ich!

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.