pycharm、idea、golang等JetBrains其他IDE修改行分隔符(换行符)、在Git CRLF、LF 换行符转换

文章目录

pycharm、idea、golang系列修改行分隔符

一般来说,不同的开发环境和项目对换行格式的使用偏好不同:

  • Windows平台 - 常用\r\n换行格式,因为这是Windows系统默认的换行方式。
  • Linux/Unix平台 - 更倾向于使用\n换行格式,这是Linux/Unix系统的默认换行方式。
  • Mac OS - 早期使用\r,但现代Mac也更常用\n。

统一换行格式可以减少版本控制系统(如Git)对代码的变动检测。Windows使用\r\n作为换行,Linux使用\n。为了使代码在不同系统间兼容,需要统一换行格式。

我应该选择什么换行符

  • Web开发 - 多用\n,因为Linux服务器更普遍。
  • C/C++项目 - 多数使用\n,要兼容Linux和Unix。
  • C#/.NET项目 - 一般使用\r\n,因为这个是Microsoft环境默认的。
  • Java项目 - 通常使用\n,Java也是更多在Linux上运行。
  • Python项目 - PEP 8规范推荐使用\n。
  • Go项目 - 官方也推荐使用\n换行。
  • 开源项目 - 大多数使用\n,以兼容各平台。

综合来看,对跨平台兼容性要求高的项目,以及大多数开源项目,会使用\n换行格式。

JetBrains IDE,默认行分隔符 是跟随系统

pycharm、idea、golang等JetBrains其他IDE,默认行分隔符 是跟随系统,但是我们很多场景是要在linux运行,所以我们需要修改行分隔符~

修改JetBrains IDE,默认行分隔符

  1. 打开Settings,搜索"line separator"
  2. 在Editor -> Code Style -> Line separator 选项中选择你需要的分隔符:
  • Unix and OS X (\n)
  • Windows (\r\n)
  • Classic Mac (\r)
  1. 应用并确定设置

修改后如下:

在Git CRLF、LF 换行符转换

需求

git 远程仓库默认使用Unix风格,即换行符统一使用LF模式。推拉过程使用如下规则:

提交代码,git 将文本中换行符转化为LF模式.标准化过程;

拉取代码,git将仓库中代码转换为CRLF模式.转换。

注:无论Windows/Linux/Mac系统都采用此规则

Git 配置选项

查看全局配置

bash 复制代码
git config --system core.autocrlf

查看本仓库配置

bash 复制代码
git config core.autocrlf

1.Windows系统开发

使用默认配置,即 git config --global core.autocrlf true。提交代码自动将CRLF转换为LF;拉取代码自动将LF转换为CRLF

2.Linux/Mac系统开发

因系统使用LF结尾,所以不想git将LF转换为CRLF。配置 git config --global core.autocrlf input。提交代码自动将CRLF转换为LF;拉取代码不转换

3.Windows程序员且开发仅在Windows上运行的项目

配置 git config --global core.autocrlf false。不转换,即提交代码CRLF也提交,拉取代码拉取原始代码CRLF

因为\n也可以在window下的IDE正常显示,所以,我一般就是 - input:表示仅在提交时转换为LF,检出时不转换。

bash 复制代码
git config --global core.autocrlf input
相关推荐
Mcband1 小时前
IDEA Debug高阶技巧
java·ide·intellij-idea
Yongqiang Cheng5 小时前
PyCharm 设置 Tabs and Indents
pycharm·tabs·indents
MerlinTheMagic6 小时前
PyCharm无法启动jupyter server问题的解决
ide·jupyter·pycharm
Python×CATIA工业智造6 小时前
Python装饰器解包装技术详解:从原理到高级应用
python·pycharm
专注VB编程开发20年9 小时前
JSA变成类似vba环境给第三方软件集成IDE功能,脚本功能
ide·microsoft·node.js·vba·wps·vb6·jsa
饼瑶10 小时前
基于AutoDL远端服务器在pycharm复现:具身智能论文pai0
服务器·elasticsearch·pycharm
少林and叔叔10 小时前
基于yolov5.7.0的人工智能算法的下载、开发环境搭建(pycharm)与运行测试
人工智能·pytorch·python·yolo·目标检测·pycharm
动能小子ohhh10 小时前
Langchain从零开始到应用落地案例[AI智能助手]【3】---使用Paddle-OCR识别优化可识别图片进行解析回答
人工智能·python·pycharm·langchain·ocr·paddle·1024程序员节
Serendipity_Carl11 小时前
爬虫数据清洗可视化案例之全球灾害数据
爬虫·python·pycharm·数据可视化·数据清洗
我狸才不是赔钱货11 小时前
VsCode + Wsl:终极开发环境搭建指南
ide·vscode·编辑器