Re: how to revert changes in working tree?
From: Liu Yubao <hidden>
Date: 2016-08-11 20:10:00
Shawn Pearce wrote:
You are just *very unlucky*. :-) The Linux kernel has case sensitive file names. In other words there are two files in the kernel: net/netfilter/xt_MARK.c net/netfilter/xt_mark.c and they have different content! On NTFS or FAT, where filenames are not case sensitive, these become the same file. So Git now starts to think that the file was modified, because one of those files overwrote the other when they were checked out. Moral of the story: You cannot work with the linux.git repository on a case insensitive filesystem, like NTFS, FAT (Windows), or HFS+ (Mac OS X).
Yes, you are very right.
$ git ls-files |tr A-Z a-z | sort | uniq -c |grep -v "1 "
2 include/linux/netfilter/xt_connmark.h
2 include/linux/netfilter/xt_dscp.h
2 include/linux/netfilter/xt_mark.h
2 include/linux/netfilter_ipv4/ipt_connmark.h
2 include/linux/netfilter_ipv4/ipt_dscp.h
2 include/linux/netfilter_ipv4/ipt_ecn.h
2 include/linux/netfilter_ipv4/ipt_mark.h
2 include/linux/netfilter_ipv4/ipt_tcpmss.h
2 include/linux/netfilter_ipv4/ipt_tos.h
2 include/linux/netfilter_ipv4/ipt_ttl.h
2 include/linux/netfilter_ipv6/ip6t_hl.h
2 include/linux/netfilter_ipv6/ip6t_mark.h
2 net/ipv4/netfilter/ipt_ecn.c
2 net/ipv4/netfilter/ipt_tos.c
2 net/ipv4/netfilter/ipt_ttl.c
2 net/ipv6/netfilter/ip6t_hl.c
2 net/netfilter/xt_connmark.c
2 net/netfilter/xt_dscp.c
2 net/netfilter/xt_mark.c