是否有文件或菜单可以让我更改如何处理行结尾的设置?
有3种选择:
结帐Windows风格,提交Unix风格
签出文本文件时,Git会将LF转换为CRLF.提交文本文件时,CRLF将转换为LF.对于跨平台项目,这是Windows上的推荐设置("core.autocrlf"设置为"true")
Checkout as-is,提交Unix风格
签出文本文件时,Git不会执行任何转换.提交文本文件时,CRLF将转换为LF.对于跨平台项目,这是Unix上的推荐设置("core.autocrlf"设置为"input").
按原样结帐,按原样提交
签出或提交文本文件时,Git不会执行任何转换.不建议跨平台项目选择此选项("core.autocrlf"设置为"false")
ENV:
我git commit说,它说:
warning: LF will be replaced by CRLF.
Run Code Online (Sandbox Code Playgroud)
这个警告尾巴落后了吗?
我在Windows中编辑文件,行尾是CRLF,就像这张图:

并且git将其更改LF为承诺回购.
所以我认为正确的警告是:
warning: CRLF will be replaced by LF.
Run Code Online (Sandbox Code Playgroud) 我试图让git不改变任何操作的任何行结尾.不幸的是,似乎这样做并不重要.我已将其缩减为以下测试用例,该测试用例具有尽可能多的不同机制来禁用此行为.
git config --global core.autocrlf falsegit config --global core.eol crlf以防万一)git init --shared(然后取消隐藏创建的.git目录).gitignore在存储库中创建一个新文件.gitattributes使用单行在存储库中创建一个新文件:* -textgit add .,然后git commit -m "initial commit"解决,例如这个.git branch master_recvdocument.txt在包含CRLF的存储库中创建一个新文件git add -A那么git commit -m "<something>"document.txt仍然包含CRLF(并删除它并重置并--hard返回仍然使用CRLF的版本)new file包含CRLF 的新文件git add -A那么git commit -m "<something>"document.txt和B …我正在我的Win Vista开发VPC上安装msysgit 1.6.4 beta.安装屏幕正在请求我是否要使用Unix行终止或DOS行终止.通常,我会选择DOS,但是设置文本表明DOS终止可能意味着文件不能与Git的所有命令行工具一起使用.Unix行终止状态"......大多数[Windows]应用程序可以处理这个......".
有谁知道我应该选择哪个选项通过shell为我的VS 2008工作使用Git?
在尝试为开发人员标准化平台时,我的一个需求是提交,.git/config以便每个人都有相同的CRLF配置,而不会忘记手动设置它.
我该如何设置?
我对所有这些消极情绪感到担忧autocrlf.如果不起作用,为什么不删除此功能?要么这个功能的制作者被误解,要么他们用它做了一个失败的实验,它应该被删除,以阻止更多的人浪费他们的时间(阅读模糊的手册页,提问,回答这些问题的人等).
我遇到了与此问题相同的问题:git status显示修改,git checkout - <file>不会删除它们
Git继续显示工作目录修改,即使git config --global core.autocrlf false:
E:\_dev\github\Core [master +0 ~93 -0]> git config --get-all core.autocrlf
false
false
Run Code Online (Sandbox Code Playgroud)
(注意我甚--system至将设置设置为false)
为什么看起来Git仍在修改我的行尾?
E:\_dev\github\Core [master +0 ~93 -0]> git status
# On branch 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: tools/StatLight/StatLight.EULA.txt
... more changes ... …Run Code Online (Sandbox Code Playgroud) 我正在尝试执行一个bash脚本(git-ftp),但我似乎无法做到这一点.这是发生的事情:
[trusktr@rocketship ~]$ ~/scripts/git-ftp
: No such file or directory
Run Code Online (Sandbox Code Playgroud)
该文件具有权限755.
这是脚本的内容:http://pastie.org/3567556
为什么我收到此错误?我该怎么做才能解决问题?
我以前能够通过执行"Discard"功能来撤消SourceTree的更改,该功能在引擎盖下生成此命令:
git -c diff.mnemonicprefix=false -c core.quotepath=false reset -q HEAD -- myproj.csproj
git -c diff.mnemonicprefix=false -c core.quotepath=false checkout HEAD -- myproj.csproj
Run Code Online (Sandbox Code Playgroud)
突然间这不起作用.我做丢弃,没有错误发生,重新审视视图,但文件仍然"修改".然后我尝试在命令行中使用以下相同的结果:
c:\myproject> git reset HEAD
Unstaged changes after reset:
M myproj.csproj
Run Code Online (Sandbox Code Playgroud)
为什么它仍然被列为未分阶段的变化?
我已经验证该文件确实可写(没有进程持有锁)
更新
git checkout 也不起作用:
C:\myproject>git checkout myproj.csproj
C:\myproject>git status
# On branch 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: myproj.csproj
# …Run Code Online (Sandbox Code Playgroud) 我正在设置 VS Code 以处理保存在 BitBucket 中的现有 Salesforce 项目。
我将存储库克隆到我的设备上,现在当我打开 VS Code 时,我收到消息“'C:\Users[我的存储库目录]'的 git 存储库有太多活动更改,只会启用 Git 功能的一个子集.
当我转到左侧菜单中的 Git 时,它说我有 5000 个分阶段更改,并且似乎认为这些更改是我删除了文件,即使我自己转到文件路径时可以看到它们。
建议?
Visual Studio Code 详细信息:版本:1.42.0(用户设置)提交:ae08d5460b5a45169385ff3fd44208f431992451 日期:2020-02-06T10:51:34.058Z Electron: 6.1604.16.16.16.16.16.Chrome 303.31-electron.0 操作系统:Windows_NT x64 10.0.18362

我们的存储库使用LF,我的 Windows 版 Git 安装按原样使用 Checkout,提交 Unix 风格的行结尾,
但我在 IDE 中签出的每个文件中仍然会遇到错误,因为它仍然会CRLF一直接收,即使它确实支持并配置为通过签入文件(或在其自己的设置中)LF使用。:LF.editorconfig
.editorconfig
root = true
[*]
end_of_line = lf
Run Code Online (Sandbox Code Playgroud)
现在已经是 2020 年了,IDE 和工具已经支持
LFWindows,那么我怎样才能拥有这些好东西呢?
git ×10
msysgit ×2
bash ×1
bitbucket ×1
editorconfig ×1
git-status ×1
line-endings ×1
revert ×1
shell ×1