2011-01-21 32 views

Trả lời

6

No. Git theo dõi nội dung không phải tệp, vì vậy bạn đẩy tất cả hoặc không có gì.
Nếu có các tệp bạn không muốn đẩy, hãy thêm chúng vào tệp .gitignore. Tuy nhiên, nếu bạn đã cam kết, bạn vẫn sẽ đẩy chúng cho cam kết đó, nhưng mọi thay đổi sau này sẽ bị bỏ qua.

+0

Ok lớn nhờ: O) Vui mừng tôi hỏi các chuyên gia trước khi đẩy! – andkjaer

+8

Giải thích này có thể tốt hơn. Git nghĩ về lịch sử về cam kết, và khi bạn đẩy, bạn đang đẩy cam kết vào điều khiển từ xa. Một cam kết theo định nghĩa đại diện cho một trạng thái của toàn bộ cây công việc của bạn không, chỉ một tập tin. Việc git đang theo dõi nội dung hoặc tệp không quan trọng; một cam kết vẫn đại diện cho * tất cả * của nó, và không thể bị chia cắt để đẩy. – Cascabel

+5

Nhận xét của bạn về gitignore cũng hơi lệch. Nếu bạn đã cam kết tập tin, thêm chúng vào gitignore sẽ không làm bất cứ điều gì (điều này đã được hỏi một ngàn lần trên SO). Bạn cũng cần phải loại bỏ chúng khỏi bị theo dõi ('git rm --cached') và cam kết loại bỏ đó, hoặc git sẽ tiếp tục đối xử với chúng như bình thường. Gitignore chỉ được áp dụng cho các tập tin không được theo dõi. – Cascabel

3

Nếu bạn chỉ cam kết một tệp thì đó là tệp duy nhất sẽ được đẩy.

Các vấn đề liên quan