相关疑难解决方法(0)

如何更改行结束设置

是否有文件或菜单可以让我更改如何处理行结尾的设置?

有3种选择:

  1. 结帐Windows风格,提交Unix风格

    签出文本文件时,Git会将LF转换为CRLF.提交文本文件时,CRLF将转换为LF.对于跨平台项目,这是Windows上的推荐设置("core.autocrlf"设置为"true")

  2. Checkout as-is,提交Unix风格

    签出文本文件时,Git不会执行任何转换.提交文本文件时,CRLF将转换为LF.对于跨平台项目,这是Unix上的推荐设置("core.autocrlf"设置为"input").

  3. 按原样结帐,按原样提交

    签出或提交文本文件时,Git不会执行任何转换.不建议跨平台项目选择此选项("core.autocrlf"设置为"false")

git msysgit

510
推荐指数
6
解决办法
39万
查看次数

Windows git"警告:LF将被CRLF取代",是警告尾巴落后了吗?

ENV:

  • Windows 7的
  • msysgit

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

127
推荐指数
6
解决办法
17万
查看次数

禁用git EOL转换

我试图让git不改变任何操作的任何行结尾.不幸的是,似乎这样做并不重要.我已将其缩减为以下测试用例,该测试用例具有尽可能多的不同机制来禁用此行为.


  • 从两台机器开始(Windows计算机= A,Linux计算机= B)
  • 在两台机器上: git config --global core.autocrlf false
  • 在两台机器上:( git config --global core.eol crlf以防万一)

  • 在A上创建新存储库.从空文件夹:
    • git init --shared(然后取消隐藏创建的.git目录)
    • .gitignore在存储库中创建一个新文件
    • .gitattributes使用单行在存储库中创建一个新文件:* -text
    • git add .,然后git commit -m "initial commit"解决,例如这个.
    • git branch master_recv
    • 添加遥控器
  • document.txt在包含CRLF的存储库中创建一个新文件
  • 承诺:git add -A那么git commit -m "<something>"
  • 请注意,A document.txt仍然包含CRLF(并删除它并重置并--hard返回仍然使用CRLF的版本)

  • SCP整个目录到电脑B.
  • 添加new file包含CRLF 的新文件
  • 承诺:git add -A那么git commit -m "<something>"
  • 请注意,B document.txt和B …

git

77
推荐指数
5
解决办法
5万
查看次数

Windows上的Git 1.6.4 beta(msysgit) - Unix或DOS行终止

我正在我的Win Vista开发VPC上安装msysgit 1.6.4 beta.安装屏幕正在请求我是否要使用Unix行终止或DOS行终止.通常,我会选择DOS,但是设置文本表明DOS终止可能意味着文件不能与Git的所有命令行工具一起使用.Unix行终止状态"......大多数[Windows]应用程序可以处理这个......".

有谁知道我应该选择哪个选项通过shell为我的VS 2008工作使用Git?

git msysgit

43
推荐指数
1
解决办法
3万
查看次数

使用代码分发git配置

在尝试为开发人员标准化平台时,我的一个需求是提交,.git/config以便每个人都有相同的CRLF配置,而不会忘记手动设置它.

我该如何设置?

我对所有这些消极情绪感到担忧autocrlf.如果不起作用,为什么不删除此功能?要么这个功能的制作者被误解,要么他们用它做了一个失败的实验,它应该被删除,以阻止更多的人浪费他们的时间(阅读模糊的手册页,提问,回答这些问题的人等).

git

43
推荐指数
2
解决办法
3万
查看次数

即使使用autocrlf = false,git status也会显示修改

我遇到了与此问题相同的问题: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)

git revert git-status core.autocrlf

35
推荐指数
4
解决办法
1万
查看次数

在尝试执行bash脚本时,为什么会出现":没有这样的文件或目录"?

我正在尝试执行一个bash脚本(git-ftp),但我似乎无法做到这一点.这是发生的事情:

[trusktr@rocketship ~]$ ~/scripts/git-ftp
: No such file or directory
Run Code Online (Sandbox Code Playgroud)

该文件具有权限755.

这是脚本的内容:http://pastie.org/3567556

为什么我收到此错误?我该怎么做才能解决问题?

git bash shell

17
推荐指数
1
解决办法
1万
查看次数

为什么不"git reset HEAD"撤消我未提交的,未分级的更改?

我以前能够通过执行"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)

git

17
推荐指数
2
解决办法
1万
查看次数

VS Code - git 存储库有太多活动更改,只会启用 Git 功能的一个子集

我正在设置 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

消息 & Git 输出

git bitbucket visual-studio-code

14
推荐指数
5
解决办法
4万
查看次数

2020 年如何在 Windows 版 Git 中永久使用“LF”行结尾?

我们的存储库使用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 line-endings editorconfig git-for-windows

11
推荐指数
1
解决办法
1万
查看次数