แก้ไขเพิ่มเติมมิถุนายน 2017: Xcode 9 ทำสิ่งนี้โดยอัตโนมัติไม่จำเป็นต้องใช้ความพยายามพิเศษ คำตอบและแบรนดอนนี้ใช้กับ Xcode 8 และรุ่นก่อนหน้าเท่านั้น
แก้ไขธันวาคม 2559:คำตอบของแบรนดอนด้านล่างเป็นทางออกที่ดีกว่าตอนนี้ ย้อนกลับไปเมื่อคำตอบนี้สร้างขึ้นในปี 2010 นี่เป็นตัวเลือกเดียวที่ฉันสามารถหาได้ ตอนนี้ฉันขอแนะนำคำตอบของแบรนดอนด้านล่าง
ปรากฎว่าการย้ายไฟล์ไปยังโฟลเดอร์จริงเป็นไปได้อย่างแน่นอนแม้ว่าจะไม่ง่ายอย่างที่ควรจะเป็น
ฉันได้รับข้อมูลพื้นฐานจากคำถามที่นี่Xcode การจัดระเบียบไฟล์และโฟลเดอร์ (วัตถุโมเดลข้อมูลหลัก - iPhone)แต่ได้เรียนรู้สิ่งสำคัญตลอดทาง
กระบวนการ
การย้ายไฟล์เป็นกระบวนการสองขั้นตอนโดยมีหลายขั้นตอนย่อย:
บอก Xcode ว่าคุณต้องการให้ไฟล์อยู่ที่ใด :
- คลิกขวา / ควบคุมคลิกที่ไฟล์หรือกลุ่มไฟล์ที่คุณต้องการย้ายแล้วเลือกรับข้อมูลจากเมนูตามบริบทที่ปรากฏขึ้น ข้อมูลกลุ่มหรือข้อมูลไฟล์หน้าต่างปรากฏขึ้น
- คลิกปุ่มเลือกที่ด้านขวาสุดของหน้าต่างในพื้นที่เส้นทาง กล่องโต้ตอบปรากฏขึ้น
- นำทางไปยังโฟลเดอร์ที่คุณต้องการย้ายไฟล์ไปไว้ สร้างโฟลเดอร์ใหม่หากจำเป็น คลิกเลือกปุ่มที่มุมขวาล่างของกล่องโต้ตอบแล้วปิดข้อมูลกลุ่ม / ไฟล์ข้อมูลหน้าต่าง
- ชื่อของไฟล์ / ไฟล์ในกลุ่มจะเปลี่ยนเป็นสีแดงเพื่อระบุว่า Xcode ไม่สามารถหาได้ในตำแหน่งที่คุณระบุ
ย้ายไฟล์จริง
- ใน Finder (หรือ Git) ให้ย้ายไฟล์ที่คุณเลือกในขั้นตอนที่ 1 ไปยังโฟลเดอร์จริงที่คุณต้องการ
- เปลี่ยนกลับเป็น Xcode ไฟล์ / กลุ่มทั้งหมดควรเปลี่ยนเป็นสีดำอีกครั้ง หากยังคงเป็นสีแดงแสดงว่าคุณพลาดการย้ายบางสิ่งไปยังโฟลเดอร์ด้านขวา
เคล็ดลับ
ฉันเรียนรู้สิ่งสำคัญสองสามอย่างในขณะที่ปรับ ~ 300 ไฟล์ในโครงการนี้:
- บางไฟล์ปฏิเสธที่จะย้ายแบบนี้ นั่นคือเมื่อคุณนำทางไปยังปลายทางใหม่ปุ่มChooseจะถูกปิดใช้งานเช่นเดียวกับปุ่มNew Folder วิธีแก้ไขแม้ว่าฉันไม่รู้ว่าทำไมการสร้างความแตกต่างคือการใช้ Xcode ก่อนเพื่อวางไฟล์เหล่านั้นในกลุ่ม (คลิกขวา / ควบคุมคลิกไฟล์แล้วเลือกกลุ่มและตั้งชื่อกลุ่ม) จากนั้นย้าย กลุ่มไปยังตำแหน่งใหม่ หลังจากที่คุณย้ายไฟล์ใน Finder จริงๆคุณสามารถลบไฟล์ออกจากกลุ่ม (โดยการลากไฟล์เหล่านั้นไปไว้ในกลุ่มหลัก / โฟลเดอร์ใหม่และลบกลุ่ม)
- หยุดและสร้างทุก ๆ สองสามนาทีหลังจากทำตามขั้นตอนที่ 2 สำหรับไฟล์จำนวนหนึ่ง งานสร้างจะบอกคุณว่าคุณทำอะไรผิดพลาดไปแล้วทำให้ง่ายต่อการย้อนกลับและแก้ไขก่อนที่คุณจะทำดาเมจมากเกินไป
- หากไฟล์ไม่ย้ายไปยังตำแหน่งที่คุณต้องการ - ฉันมีเวลาที่จะย้ายไฟล์บางไฟล์ที่สร้างขึ้น แต่เนิ่นๆในโฟลเดอร์ Classes - คุณสามารถลากไฟล์เหล่านั้นออกจากที่เดิมใน Finder ได้ สถานที่บางแห่งมีประโยชน์เช่นเดสก์ท็อปลบการอ้างอิงถึงพวกเขาใน Xcode แล้วนำเข้าพวกเขาอีกครั้งผ่านทางขวา / ควบคุมคลิกตัวเลือกเพิ่มไฟล์ที่มีอยู่
- หากก่อนหน้านี้คุณเคยใช้ Xcode เพื่อลบการอ้างอิงไปยังไฟล์โดยไม่ย้ายไปที่ถังขยะในโครงการนี้คุณจะพบไฟล์ที่ไม่ต้องย้าย แต่อยู่ที่นั่น ระวังว่าคุณไม่ได้ทำในสิ่งที่ฉันทำสับสนชื่อของกลุ่มไฟล์ปัจจุบันที่ฉันย้ายและไฟล์ที่เก่ากว่าและไม่เชื่อมโยงอีกต่อไปยืนยันว่า Xcode นำเข้าพวกเขาเพราะคุณคิดว่ามันหนาแน่น
หวังว่านี่จะช่วยให้บางคนในอนาคต ฉันแปลกใจว่ามันยากและบางครั้งก็ยุ่งยากเหมือนเดิม