2011-12-13 24 views
10

Thực thi tốt git để biểu thị rằng một tệp đã thay đổi nào sẽ không bao giờ được cam kết?Git: Không bao giờ cam kết các tệp đã thay đổi (nhưng vẫn giữ nguyên bản sửa đổi.)

Ví dụ: đối với dự án phát triển chủ đề WordPress, tôi đang theo dõi các tệp WordPress gốc trong git; và tệp cấu hình wp-config.php, chứa thông tin cục bộ chỉ liên quan đến hệ thống hiện tại, cần được thay đổi nhưng tôi không muốn cam kết nó với git.

Trong Perforce, tôi đã sử dụng để lưu hình thức sự kiện này như một numbered changelist và không bao giờ kiểm tra xem nó. Tôi đã tự hỏi liệu một thủ thuật tương tự có sẵn với git.

+2

Tôi tin rằng bạn đang tìm kiếm "gitignore" –

Trả lời

27

Nếu bạn vẫn muốn giữ wp-config.php phiên bản, nhưng bỏ qua mọi thay đổi địa phương với nó:

git update-index --assume-unchanged wp-config.php 

Đây là khác nhau mà một .gitignore, mà sẽ chỉ làm việc nếu bạn loại bỏ đầu tiên wp-config.php từ chỉ số :

git rm --cache `wp-config.php` 
echo wp-config.php >> .gitignore 
+0

Cảm ơn bạn! Đối với những người khác, điều này cũng có thể hữu ích: http://gitready.com/intermediate/2009/02/18/temporarily-ignoring-files.html – moey

0

Bạn có thể sử dụng tệp .gitignore để giải quyết vấn đề này.

+2

Thông tin thêm về cách sử dụng * .gitignore * sẽ làm cho câu trả lời này tốt hơn. Ví dụ: – ahsteele

+0

, nếu bạn không đẩy tệp có hậu tố ".php" – Sasori

+0

bạn có thể tạo tệp .gitignore trong thư mục và thêm dòng như "* .php". – Sasori

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