作者willy69wu31 (小小吴)
看板Linux
标题[问题] git filemode 用意?
时间Fri Oct 17 21:07:28 2014
先前在 Windows 上开发,用 git 控管版本,
一直没有留意过这个问题,以为在 Linux 上也一样。
後来在 Linux 上对几个小专案 commit 过几次,
接着把整个 repo 搬到 Windows 的网路磁碟机上,从 Linux 去 mount 那个磁区,
然後 git diff 就喷出满满的 filemode diff...
而从 Windows 端下 git diff 则是空白输出(没有差别)
我 google 了两三天,似乎这个 filemode 在 Linux 上才有作用,
在 Windows 上预设不启用,所以我从来没发现这个差别,
不过有人建议保留这个设定,不要关掉,在某些时候用的到。
但我继续搜寻了一段时间都没有解释这个 filemode 究竟什麽时候会用的到,
也不知道关掉是否有某些副作用(或是对某些特定的专案会有问题)
请问有人有经验吗? 通常什麽时候用到? 各位会停用 filemode 吗?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.27.102.207
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/Linux/M.1413551251.A.C35.html
1F:→ bibo9901: 就只是filemode属性跑掉而已...之後别人clone下来可能要 10/17 21:14
2F:→ bibo9901: 手动加上执行权限. 不过干嘛不用pull/push就好了? 10/17 21:15
3F:→ bibo9901: 话说用linux却不知道filemode也是满神奇的 10/17 21:15
1. 不用 pull/push 的原因说来话长,
起因是有一份学校作业得在一个很旧的 VM Debian 内做,
结果因 git 太旧(1.5.*),git push 无法推到 https 协定的 remote 上,
才打算先把整个 repo 搬到 Windows 上再做其他处理
2. 跑过 git diff 出问题之前,我从来不知道 git 会连权限一起 commit,
以往我都是 Linux 的 repo 只在 Linux 上用,Windows 的 repo 只在 Windows 用,
所以根本没察觉有 filemode
4F:→ Bellkna: 我是遇到换行符号的问题 後来重装msysgit时有改一下安装 10/17 22:06
5F:→ Bellkna: 的选项 hg的话是没这问题 git这部份好像是另外设定的 10/17 22:08
我早有注意到换行符号的问题,我全部设定 autocrlf = input (即使 Windows 上也是)
※ 编辑: willy69wu31 (111.254.50.104), 10/18/2014 16:24:29
6F:→ dou0228: git 可以自己抓来 upgrade Debian VM 里面的就可以了 10/24 11:36