2012-01-31 6 views
5

Tôi đã phạm sai lầm ngây thơ khi thiết lập dự án của mình. Chúng tôi là 3 nhà phát triển làm việc trên một kho lưu trữ từ xa. Trong khi thiết lập git, chúng tôi không bao giờ nghĩ rằng Xcode sẽ sản xuất các tập tin không phát triển và đẩy chúng vào repo từ xa của chúng tôi. Bây giờ sau khi tôi đã học được sau vụ tai nạn và đốt cháy, tôi đã tạo một tệp .gitignore.Thiết lập Naive Git, Có thể hủy các tệp được liệt kê trên mygitignore không?

.gitignore trông giống như thế này, vui lòng cho tôi biết nếu tôi cũng nên chỉnh sửa điều này. (Tín dụng tập tin đi quá: This question's câu trả lời được đưa ra bởi Abizem)

# Mac OS X 
*.DS_Store 

# Xcode 
*.pbxuser 
*.mode1v3 
*.mode2v3 
*.perspectivev3 
*.xcuserstate 
project.xcworkspace/ 
xcuserdata/ 

Nhưng bây giờ câu hỏi là có bất kỳ khả năng mà tôi có thể untrack tất cả các tập tin được liệt kê từ kiểm soát nguồn của chúng tôi?

hoặc

Tôi có thể liệt kê tất cả các file theo dõi với con đường của mình và sau đó tôi biết một cách đau đớn để loại bỏ từng người một với,

git rm --cached 'file path' 
+0

Nếu bạn không phải là xa cùng với dự án bạn có thể chỉ muốn nuke kho lưu trữ (chỉ là kho lưu trữ .git, không phải tệp!) Và thiết lập lại. – sosborn

+0

:(chúng tôi đã cam kết từ 15 đến 20 ngày và có rất nhiều tệp – doNotCheckMyBlog

+0

Vâng, tôi hiểu cách thực hiện. Tuy nhiên, bạn sẽ không bị mất các tệp này, chỉ là lịch sử cam kết – sosborn

Trả lời

6

Cái gì tôi đã thực hiện một vài lần trong những tình huống , là di chuyển tất cả các tập tin trong kho lưu trữ ở một nơi khác trên hệ thống tập tin (trừ .gitignore), sau đó chạy:

git add --all 
git commit -m "Remove all files" 

các n thêm các tập tin của bạn trở lại và chạy như sau:

git add --all 
git commit -m "Re-add files" 

này thứ hai thêm & cam kết sẽ tuân thủ các tập tin gitignore của bạn.