开始之前我应该说我已经看了这个帖子和这个很好,但由于某些原因,解决方案,只要不是为我工作.我的存储库位于,~/sources因此每个命令都从该路径运行.这就是我所做的:
将filemode更改为false:
$ git config --global core.filemode false
Run Code Online (Sandbox Code Playgroud)
检查全局配置:
$ git config --list
...
core.filemode=false
core.repositoryformatversion=0
core.bare=false
core.logallrefupdates=true
...
Run Code Online (Sandbox Code Playgroud)
重新初始化存储库:
$ git init
Reinitialized existing Git repository in /home/rperez/sources/.git/
Run Code Online (Sandbox Code Playgroud)
检查需要添加的内容:
$ git status
Run Code Online (Sandbox Code Playgroud)
我得到一个包含存储库中所有文件的列表.
我在用:
$ git --version
git version 2.9.3
Run Code Online (Sandbox Code Playgroud)
更新:为两个不同的文件添加了git diff
$ git status
...
modified: testing/test-valid-swasset-update.php
...
Untracked files:
(use "git add <file>..." to include in what will be committed)
library/mpdf60/ttfontdata/dejavusanscondensedI.GDEFdata.php
...
Run Code Online (Sandbox Code Playgroud)
git diff 上述文件的输出:
$ git diff testing/test-valid-swasset-update.php
diff --git a/testing/test-valid-swasset-update.php b/testing/test-valid-swasset-update.php
old mode 100755
new mode 100644
Run Code Online (Sandbox Code Playgroud)
我在这里缺少什么?
AD7*_*six 19
问题中的diff输出表明本地 git config已filemode设置为true.这可能是预期的行为,因为为repo创建的默认配置定义了这个:
-> git init
Initialized empty Git repository in /tmp/foo/.git/
-> cat .git/config
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
Run Code Online (Sandbox Code Playgroud)
更改全局配置filemode不会影响这一点,因此实际上git config --global core.filemode false没有做任何事情,因为它总是在本地被覆盖.
因此,要更改此repo的filemode,请更改本地配置:
$ git config core.filemode false
$ git config core.filemode
false
Run Code Online (Sandbox Code Playgroud)
鉴于这个问题/答案,它有可能发挥作用,尽管它不适合我.
| 归档时间: |
|
| 查看次数: |
8377 次 |
| 最近记录: |