Tôi đang làm việc với kho lưu trữ git đang lưu trữ dữ liệu cho một trang web. Nó chứa một tệp .htaccess, với một số giá trị phù hợp cho máy chủ sản xuất. Để tôi làm việc trên trang web, tôi phải thay đổi một số giá trị trong tệp, nhưng tôi không bao giờ muốn cam kết những thay đổi này hoặc tôi sẽ phá vỡ máy chủ.Làm thế nào để bạn yêu cầu git bỏ qua vĩnh viễn các thay đổi trong một tệp?
Vì .gitignore không hoạt động đối với các tệp được theo dõi, tôi đã sử dụng "git update-index --assume-constant .htaccess" để bỏ qua các thay đổi trong tệp, tuy nhiên điều này chỉ hoạt động cho đến khi bạn chuyển nhánh. Khi bạn thay đổi trở lại nhánh ban đầu, các thay đổi của bạn sẽ bị mất.
Có cách nào để yêu cầu git bỏ qua các thay đổi trong tệp và để nó một mình khi thay đổi nhánh? (Cũng giống như nếu tập tin đã được theo dõi.)
Perfect! Điều này giải quyết được vấn đề của tôi. Tôi đã thêm ".htaccess filter = htaccess" vào .git/info/attributes, sau đó trong .git/config tôi đã thêm: [filter "htaccess"] clean = sed 's |/mypath |/dev' smudge = sed 's |/dev |/mypath' Và bây giờ mọi tham chiếu đến/dev/cái gì đó trong tập tin .htaccess sẽ được thay thế bằng/mypath/something, và được khôi phục ở cuối có nghĩa là tôi thậm chí có thể chỉnh sửa tập tin và commit những thay đổi của tôi, mà không nhận được phiên bản/mypath trong repo! – Malvineous