2015-05-27 15 views
5

Khi nào tôi thực hiện trạng thái git, tệp netbeans private.xml đang gây ra sự cố, tôi đã thử thêm vào đó trong git bỏ qua một số cách. nhưng gitignore chỉ đơn giản là không bỏ qua nó.Git bỏ qua không bỏ qua các tệp riêng tư trên netbeans

git status 
On branch master 
Your branch is up-to-date with 'origin/master'. 

Changes not staged for commit: 
    (use "git add <file>..." to update what will be committed) 
    (use "git checkout -- <file>..." to discard changes in working directory) 

    modified: .gitignore 
    modified: nbproject/private/private.xml 
... 

git tôi bỏ qua tập tin là

node_modules/ 
dist/ 
*.log 
nbproject/private/*  
*.bak 
*.orig 
*~ 
*.log 
*private.xml 

Cố gắng cả nbproject/private/* và * private.xml trong cùng một tập tin.

Trả lời

13

Tệp đã được theo dõi sẽ không bị bỏ qua: trước tiên bạn cần loại bỏ khỏi chỉ mục.

git rm --cached private.xml 
git add -u . 
git commit -m "Record deletion of private.xml from the index" 

(tùy chọn --cached chắc chắn rằng các tập tin vẫn còn trên đĩa)

Sau đó, bạn có thể thêm nó vào .gitignore (không cần cho '*')

private.xml 

Lưu ý: bất cứ khi nào một tệp được hoặc không bị bỏ qua, bạn có thể kiểm tra xem quy tắc .gitignore nào áp dụng với:

git check-ignore -v -- private.xml 
1

Tệp của bạn đã là đã thêm vào repo git.
Sau khi tệp được thêm vào (không được bỏ) thêm nó vào .gitignore sẽ không bỏ qua nó vì đã có trong repo, do đó bạn phải xóa khỏi kho lưu trữ, xóa tệp và sau đó nó sẽ bị bỏ qua.

Xem VonC mã ở trên về cách thực hiện.

Điều quan trọng cần hiểu là khi tệp đã được cam kết, việc thêm nó vào git bỏ qua sẽ không bỏ qua nó.